Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从活动返回结果_Java_Android_Android Intent_Android Activity_Navigation Drawer - Fatal编程技术网

Java 从活动返回结果

Java 从活动返回结果,java,android,android-intent,android-activity,navigation-drawer,Java,Android,Android Intent,Android Activity,Navigation Drawer,我在安卓4.0.x上有问题。向上导航时,onActivityResult的结果代码始终为0,意图为空 向上导航代码: protected void navigateUp(){ Intent upIntent = NavUtils.getParentActivityIntent(this); upIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

我在安卓4.0.x上有问题。向上导航时,onActivityResult的结果代码始终为0,意图为空

向上导航代码:

    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();
    }
设置结果代码:

    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上不工作。为什么?谢谢

您忘记了activityresult的方法,因此您的代码必须如下所示:

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 
  }
}
我有以下方法:),但resultCode始终为0,Intent为null。