簡體   English   中英

如何從Fragment到達onActivityResult()並進行處理?

[英]How to reach onActivityResult() from Fragment and handle it?

我有一個MainActivity和一個附加的滑動菜單。
當用戶單擊滑動菜單中的按鈕時,我分別調用Fragments。
之后,在這些片段之一中,我叫圖庫照片選擇器,需要在片段中處理它。

我怎么解決這個問題?

覆蓋onActivityResult方法在片段和通過使該片段的對象像下面的方式從活動的onActivityResult方法調用它,

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

    if (fragment != null) {
        fragment.onActivityResult(requestCode, resultCode, data);
    }
}

希望對您有幫助。

您可以使用此代碼

Intent intent = new Intent();
        intent.setType("image/*");
        intent.setAction(Intent.ACTION_GET_CONTENT);
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        startActivityForResult(intent, SELECT_REQUEST);

在onActivityResult中

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

    if (requestCode == SELECT_REQUEST && resultCode == Activity.RESULT_OK) {
        try {
            InputStream stream = getActivity().getContentResolver()
                    .openInputStream(data.getData());
            pic = BitmapFactory.decodeStream(stream);
            stream.close();
            imageView.setImageBitmap(pic);

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM