Android studio 点击按钮打开手机图库,,打卡图片用ImageView显示
时间: 2024-02-22 16:59:56 浏览: 169
好的,这个问题也很好,我可以帮你解决。首先,你需要在你的 AndroidManifest.xml 文件中添加访问外部存储的权限:
```xml
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
```
然后,你可以在你的 Activity 中添加一个 Button 和一个 ImageView:
```xml
<Button
android:id="@+id/button_choose_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choose Image" />
<ImageView
android:id="@+id/image_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp" />
```
在你的 Activity 中,你需要为 Button 添加一个点击事件,当点击按钮时,启动图库应用程序,让用户选择图片:
```java
public class MainActivity extends AppCompatActivity {
private static final int REQUEST_IMAGE_GET = 1;
private Button mButtonChooseImage;
private ImageView mImageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mButtonChooseImage = findViewById(R.id.button_choose_image);
mImageView = findViewById(R.id.image_view);
mButtonChooseImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
if (intent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(intent, REQUEST_IMAGE_GET);
}
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_IMAGE_GET && resultCode == RESULT_OK) {
Uri fullPhotoUri = data.getData();
mImageView.setImageURI(fullPhotoUri);
}
}
}
```
在 onActivityResult() 方法中,我们可以获取用户选择的图片的 Uri 对象,然后将其设置到 ImageView 中。
现在,你可以运行你的应用程序,并点击按钮选择一张图片。选择完成后,你将在 ImageView 中看到选择的图片。
阅读全文