私は2つの活動をしています。1 つが呼び出されLogin
、もう1 つが呼び出されListDeals
ました。Login
送信ボタンのあるフォームがあり、これを押すとアクティビティが に切り替わりますListDeals
。これは機能します。
ただし、Logcat では、アクティビティが開始されたことを示すメッセージが表示されません。また、 でListDeals
ユーザーが戻るボタンを押すと、両方のアクティビティが強制終了されます。私は周りを見回して、これが私が思いついたものです:
public class Login extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login_screen);
Button submit=(Button)findViewById(R.id.submit);
submit.setOnClickListener(onSubmit);
}
private View.OnClickListener onSubmit=new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent myIntent=new Intent(view.getContext(),ListDeals.class );
startActivityForResult(myIntent,0);
}
};
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.login_screen, menu);
return true;
}
@Override
public void onActivityResult(int requestCode,int resultCode, Intent data) {
if(resultCode==2) {
finish();
}
}
}
public class ListDeals extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.deals_list);
System.out.println("starting activity");
}
@Override
protected void onDestroy() {
System.out.println("dude");
setResult(2);
super.onDestroy();
}
protected void onStop(){
setResult(2);
super.onStop();
}
}
ただし、戻るボタンを押すと、目的Login
ではないアクティビティに戻ります。