1 Câu hỏi: AlertDialog, cùng một hình ảnh được hiển thị với kích thước khác nhau

câu hỏi được tạo ra tại Sun, May 5, 2019 12:00 AM

Tôi đã tự hỏi nếu ai đó có thể giúp tôi. Tôi đang cố gắng tạo AlertDialog nơi tôi hiển thị hình ảnh bằng PhotoView để phóng to.

Để thực hiện việc này trong lớp Fragment tôi đang sử dụng mã này

            AlertDialog.Builder alert = new AlertDialog.Builder(getActivity()); 
            View mView = getLayoutInflater().inflate(R.layout.esta_cre, null);
            PhotoView mPhotoView = mView.findViewById(R.id.image_esq);
            File imageFile = new File(Environment.getExternalStorageDirectory() + "/Pictures/scenery.jpg");
            Bitmap bitmap = BitmapFactory.decodeFile(imageFile.getAbsolutePath());
            mPhotoView.setImageBitmap(bitmap);

            // mPhotoView.setImageResource(R.drawable.scenery);   

            mPhotoView.setScaleType(ImageView.ScaleType.CENTER_CROP);  

            alert.setView(mView)
                    .setPositiveButton("Cerrar", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int id) {
                            dialog.cancel();
                        }
                    });

            AlertDialog mDialog = alert.create();
            mDialog.show();

XML

  <com.github.chrisbanes.photoview.PhotoView
      android:id="@+id/image_esq"
      android:layout_width="match_parent"
      android:layout_height="match_parent" />

Khi tôi sử dụng hình ảnh trong thư mục drawable, AlertDialog hình ảnh được hiển thị với kích thước mong muốn.

mPhotoView.setImageResource(R.drawable.scenery);

drawable

Tuy nhiên, tôi dường như không thể hiển thị kích thước mong muốn khi hình ảnh nằm trong external memory.

File imageFile = new File(Environment.getExternalStorageDirectory() + "/Pictures/scenery.jpg"); Bitmap bitmap = BitmapFactory.decodeFile(imageFile.getAbsolutePath()); mPhotoView.setImageBitmap(bitmap);

bộ nhớ ngoài

Ai đó có thể giúp tôi với điều này?

    
0
1 Câu trả lời                              1                         

Tôi đã sửa nó rồi.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin">

<FrameLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/frameLayout"
    android:background="#b2ff7c">

    <com.github.chrisbanes.photoview.PhotoView
    android:id="@+id/image_esque_crevi"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:adjustViewBounds="true"
    android:scaleType="center" />

</FrameLayout>

</RelativeLayout>
    
0
2019-05-05 13: 54: 35Z
nguồn đặt đây