我尝试了几种不同的方法来在 imageView 中显示图库中选定的图像。在 MainActivity 中,我让用户从 Gallery 中选择一个图像,并在 MainActivity 中使用 Intent ,将图像的 uri 发送到 NextActivity 并将 uri 设置为 imageView,但它不起作用。我看不到图像。在 Debug模式下,我在设置为 ImageView 的变量中看到 uri,但它不显示图像。
我的代码
MainActivity.java onCreate方法
<!-- language: java -->
if (resultCode == RESULT_OK && requestCode == PICK_IMAGE){
imageUri = data.getData();
Intent intent = new Intent (this, NextActivity.class );
if(imageUri != null){
intent.putExtra("imageUri", imageUri.toString());
startActivity(intent);
}
}
NextActivity.java onCreate方法
<!-- language: java -->
ImageView imgView = (ImageView) findViewById(R.id.imageView1);
Intent intent = getIntent();
String image_path = intent.getStringExtra("imageUri");
Uri fileUri = Uri.parse(image_path);
imgView.setImageURI(fileUri);
我尝试按原样发送 Uri,将其转换为字符串并重新转换等等。我不知道。
NextActivity XML
<!-- language: xml -->
<ImageView
android:id="@+id/imageView1"
android:layout_width="396dp"
android:layout_height="450dp"
android:adjustViewBounds="true"
android:contentDescription="@string/app_name"
android:scaleType="fitXY"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.466"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
最佳答案
试试这个:
Uri fileUri = Uri.parse(image_path);
imgView.setImageURI(null);
imgView.setImageURI(fileUri);
关于java - ImageView 不显示来自 java android Intent 的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61099031/