Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.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
Android onActivityResult对片段不起作用_Android - Fatal编程技术网

Android onActivityResult对片段不起作用

Android onActivityResult对片段不起作用,android,Android,我的流量 fragclient>activity>fragsearchclient fragsearchclient返回fragclient成功 fragproduct>activity>fragsearchprodutc fragsearch produtc返回错误,未调用fragproduct的ActivityResult 帮忙 范例 public class MainActivityFragment extends Fragment { public MainActivityF

我的流量

fragclient>activity>fragsearchclient fragsearchclient返回fragclient成功

fragproduct>activity>fragsearchprodutc fragsearch produtc返回错误,未调用fragproduct的ActivityResult

帮忙

范例

public class MainActivityFragment extends Fragment {

    public MainActivityFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_main, container, false);
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        startActivity(new Intent(getActivity(), MainActivity2Activity.class));
    }

}

public class MainActivity2ActivityFragment extends Fragment {

    public MainActivity2ActivityFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_main_activity2, container, false);
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        startActivityForResult(new Intent(getActivity(), MainActivity22Activity.class), Activity.RESULT_OK);
    }

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
    }
}

public class MainActivity22ActivityFragment extends Fragment {

    public MainActivity22ActivityFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_main_activity22, container, false);
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getActivity().setIntent(new Intent());
        getActivity().setResult(Activity.RESULT_OK);
        getActivity().finish();
    }
}

onActivityResult无法在片段上工作

我的应用程序也有同样的问题!我的应用程序包含1个活动和不同的片段,当我调用“Camera Activity”时,我需要捕获“OnActivityResult”事件。然后,我可以在acitvity中使用“OnActivityResult”解决这个问题,在我的示例中,我的相机活动返回一个字符串,该字符串被声明为公共静态字符串,因为我的片段可以访问该值

您永远无法在片段中捕获“OnActivityResult”事件,因为此事件属于“ActivityClass”,因此您需要在调用片段的activity类中捕获事件


告诉我我是否帮助过你和优秀的编程

可能重复我所做的,替换活动。结果_999的OK工作完美感谢您的关注记住,如果我给您解决方案,请给我检查,谢谢,编程很好!
public class  MainActivity extends Activity {
    public static String ActivityResultValue;

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data)   {
        super.onActivityResult(requestCode, resultCode, data);
        switch(requestCode) {
            //Camera Activity
            case (0) : {
                if (resultCode == Activity.RESULT_OK) {
                    ActivityResultValue = data.getStringExtra("photoName");
                }
                break;
            }
            case (1) :{
                //Other OnActivityResults...
                break;
            }
        }
    }
}