我正在实施一项功能,使用户可以点击按钮从图库中选择自己的个人资料图片。
这是在onCreate方法下实现的部分,用于调用意图从图库中选择图像。
btnChooseProfile.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Image"), REQ_CODE_SELECT_IMAGE);
}
});
现在我重写了onActivityResult方法,将所选图像设置为imageview。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == REQ_CODE_SELECT_IMAGE && resultCode == Activity.RESULT_OK) {
try {
ivProfile.setImageURI(data.getData());
} catch(Exception e) {
e.printStackTrace();
}
}
}
在运行应用程序并测试此部分时,我设法到达了库,但就是这样。单击图像时,应用程序将会出现,而在Logcat上不会留下任何错误消息。
你认为片段有什么问题?
答案 0 :(得分:0)
删除" &安培;&安培; resultCode == Activity.RESULT_OK"从if条件。你会得到你的解决方案。但这种方式并不合适。如果你愿意,可以这样。
答案 1 :(得分:0)
我只是傻到想念它
在Androidmanifest.xml文件中,我将此属性添加到活动中。
android:noHistory="true"
由于此属性,当我选择从图库中选择图像时,活动将更改为另一个图像,并且原始图像已从堆栈中删除。因此,在选择图像后,应用程序无法找到返回的位置,这就是我的应用程序崩溃的原因。
现在我删除了该属性,代码工作正常。