第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將啟動活動結(jié)果封裝在 Java 類中,并獲取調(diào)用該方法的活動上的 onActivity結(jié)果

如何將啟動活動結(jié)果封裝在 Java 類中,并獲取調(diào)用該方法的活動上的 onActivity結(jié)果

犯罪嫌疑人X 2022-09-14 16:40:38
我在幾個活動中使用下一個相機代碼,我想做一個類來封裝在Android中使用相機的方法。我試圖得到的是活動類是這樣的:Public class Myfragment extends Fragment{@Nullable@Overridepublic View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {    View v = inflater.inflate(R.layout.profile_fragment, container, false);        mButtonProfilePhoto = v.findViewById(R.id.buttonProfilePhoto);        mButtonProfilePhoto.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View v) {        //Here I call the camera intent.            Camera.dispatchTakePictureIntent(getActivity(), mPhotoFile);            }            });    return v;    }        @Override        public void onActivityResult(int requestCode, int resultCode, Intent data) {              //handle the camera result}相機類如下所示:public class Camera{public static void dispatchTakePictureIntent(Activity activity, File file) {    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);    // Ensure that there's a camera activity to handle the intent    if (takePictureIntent.resolveActivity(activity.getPackageManager()) != null) {        // Create the File where the photo should go        file = null;        try {            file = Camera.createImageFile(activity);        } catch (IOException ex) {            // Error occurred while creating the File        }        // Continue only if the File was successfully created        if (file  != null) {            Uri photoURI = FileProvider.getUriForFile(activity,                    "com.itcom202.weroom.fileprovider",                    file );            takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI);            startActivityForResult( takePictureIntent, REQUEST_IMAGE_CAPTURE);        }    }}}我現(xiàn)在遇到的問題是,我從來沒有從片段中接到回電。onActivityResult
查看完整描述

1 回答

?
FFIVE

TA貢獻1797條經(jīng)驗 獲得超6個贊

操作系統(tǒng)不支持發(fā)送到 的 。但是,支持庫具有執(zhí)行此操作的機制,該機制將調(diào)用注冊到 中的特殊表。這里的訣竅是,你必須使用 自己的啟動活動結(jié)果(),而不是 的一個。onActivityResult()FragmentAppCompatActivityFragmentActivity


因此,您的類代碼應(yīng)如下所示:Camera


public class Camera{


    public static void dispatchTakePictureIntent(Activity activity, Fragment fragment, File file) {

        Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

        // Ensure that there's a camera activity to handle the intent

        if (takePictureIntent.resolveActivity(activity.getPackageManager()) != null) {

            // Create the File where the photo should go

            file = null;

            try {

                file = Camera.createImageFile(activity);

            } catch (IOException ex) {

                // Error occurred while creating the File


            }

            // Continue only if the File was successfully created

            if (file  != null) {

                Uri photoURI = FileProvider.getUriForFile(activity,

                        "com.itcom202.weroom.fileprovider",

                        file );

                takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI);

                fragment.startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);

            }

        }

    }


}

請注意,最后一行使用 的FragmentstartActivityForResult()


查看完整回答
反對 回復(fù) 2022-09-14
  • 1 回答
  • 0 關(guān)注
  • 111 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號