亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

onActivityResult 沒有做任何事情

onActivityResult 沒有做任何事情

斯蒂芬大帝 2022-06-30 11:36:55
我正在嘗試創建一個圖像選擇器,用戶將在其中選擇一個圖像,并將一個圖像ImageView附加到一個linear layout圖像作為其圖像資源。這是我的代碼,我不知道出了什么問題,但沒有ImageView附加到 LinearLayoutprivate void pickImage() {    Intent intent = new Intent(Intent.ACTION_PICK);    intent.setType("image/*");    startActivityForResult(intent, 1);}@Overrideprotected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {    if (resultCode != RESULT_OK) {        return;    } else if(resultCode == 1) {        final Bundle extras = data.getExtras();        if (extras != null) {            //IMAGE SELECTED            Bitmap imageSelected = extras.getParcelable("data");            final View listingImage = getLayoutInflater().inflate(R.layout.image_listing, null);            Button remove = (Button)listingImage.findViewById(R.id.removeImage);            ImageView imageView = (ImageView)listingImage.findViewById(R.id.imageView);            //SET IMAGE OF IMAGEVIEW TO SELECTED IMAGE            imageView.setImageBitmap(imageSelected);            remove.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View v) {                    linearLayout.removeView(listingImage);                }            });            //ADD IMAGEVIEW TO LINEARLAYOUT            linearLayout.addView(listingImage, 0);        }    }}pickImage()從按鈕調用。
查看完整描述

1 回答

?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

你不能去 onActivityResult 因為你寫錯了條件。它將是請求代碼,而不是結果代碼,因此您無法保存所選圖像。


@Override

    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {


        if (requestCode == 1 && resultCode == RESULT_OK){


            Uri contentURI = data.getData();

            try {

                Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), contentURI);

                String path = saveImage(bitmap);

                Toast.makeText(MainActivity.this, "Image Saved!", Toast.LENGTH_SHORT).show();

                listing_image.setImageBitmap(bitmap);

                ByteArrayOutputStream baos=new ByteArrayOutputStream();

                bitmap.compress(Bitmap.CompressFormat.PNG,100, baos);

                byte [] b=baos.toByteArray();

                String temp= Base64.encodeToString(b, Base64.DEFAULT);


            } catch (IOException e) {

                e.printStackTrace();

                Toast.makeText(MainActivity.this, "Failed!", Toast.LENGTH_SHORT).show();

            }

        }

}

現在您可以將圖像附加到線性布局。


查看完整回答
反對 回復 2022-06-30
  • 1 回答
  • 0 關注
  • 94 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號