[英]Return result from Activity
我在Android 4.0.x上有問題。 在onActivityResult中向上導航時,resultCode始終為0,而Intent為null。
導航代碼:
protected void navigateUp(){
Intent upIntent = NavUtils.getParentActivityIntent(this);
upIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
if (NavUtils.shouldUpRecreateTask(this, upIntent)) {
TaskStackBuilder.create(this)
.addNextIntentWithParentStack(upIntent)
.startActivities();
} else {
NavUtils.navigateUpTo(this, upIntent);
}
}
設置結果代碼:
public void onNavigationDrawerItemSelected(int position) {
Intent resultIntent = new Intent();
resultIntent.putExtra(SELECTED_POSITION, position);
setResult(RESULT_OK, resultIntent);
navigateUp();
}
什么問題 它適用於4.4.x,不適用於4.0.x。 為什么? 謝謝!
您忘記了onActivityResult
方法,因此您的代碼必須類似於:
Intent intent = new Intent(this, YourActivity.class);
startActivityForResult(intent, 1);
.
.
.
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK){
//Do whatever you want
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.