0

撮影した写真のリストを表示するフラグメントがあり、ボタンをクリックして新しい写真を撮ることができます。ただし、写真を撮った後、PreviewActivity に移動して、撮影した写真を受け入れるかキャンセルし、説明も追加します。

その後、その情報でフラグメントに戻りたいと思います。明確にするために:

私のフラグメントは、次のようにカメラを呼び出します。

imgCamera.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(
                        android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
                nameFile = UUID.randomUUID().toString().replaceAll("-", "");
                fileName = HelperFoto.createFile(HelperFoto.getTempFile() + date.replace(":", "_"), nameFile + ".jpg");
                intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(fileName.toString())));
                startActivityForResult(intent, 2);
            }
        });

その後、生成されたデータを次のように PreviewActivity に送信します。

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == 2 && resultCode == Activity.RESULT_OK) {

        Intent startPreview = new Intent(getContext(), PreviewActivity.class);
        startPreview.putExtra("path", fileName.toString());
        startActivity(startPreview);

    }

    super.onActivityResult(requestCode, resultCode, data);

}

したがって、私の PreviewActivity では、必要な情報をすべて取得できました。したがって、フラグメントに送り返すことはできません ( onBackPressed() を使用しようとしましたが成功しませんでした)。

誰かが私を助けることができますか?

4

2 に答える 2

0

フラグメントを再度ロードする場合は、次の手順に従う必要があります

FragmentManager fragmentManager = getFragmentManager();
            FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
            HelloFragment hello = new HelloFragment();
            fragmentTransaction.add(R.id.fragment_container, hello, "HELLO");
            fragmentTransaction.commit();
于 2016-05-12T16:01:22.733 に答える