Java 使用图像按钮查看图像

Java 使用图像按钮查看图像,java,android,Java,Android,我是Android新手。我想通过手机摄像头拍摄一张照片,并尝试从手机多媒体资料中拍摄一张照片。在这种情况下,我成功地完成了一个步骤,即从多媒体资料中拍摄照片,但在通过相机拍摄照片时,我遇到了一个问题,即覆盖方法在ActivityResult(int requestcode、int resultcode、Intent data)上受保护的void不起作用,错误显示,它也妨碍了以前的覆盖方法从画廊拍照。我想同时做这两件事。那我现在要做什么 我已经创建了 私有静态最终整数选取图像=150; uriim

我是Android新手。我想通过手机摄像头拍摄一张照片,并尝试从手机多媒体资料中拍摄一张照片。在这种情况下,我成功地完成了一个步骤,即从多媒体资料中拍摄照片,但在通过相机拍摄照片时,我遇到了一个问题,即覆盖方法
在ActivityResult(int requestcode、int resultcode、Intent data)上受保护的void
不起作用,错误显示,它也妨碍了以前的覆盖方法从画廊拍照。我想同时做这两件事。那我现在要做什么

我已经创建了 私有静态最终整数选取图像=150; uriimageurl

private void openGallery() {

    Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.INTERNAL_CONTENT_URI);
    startActivityForResult(intent,PICK_IMAGE);
}

@Override
protected void onActivityResult(int requestcode,int resultcode,Intent data){
    super.onActivityResult(requestcode,resultcode,data);
    if(resultcode == RESULT_OK && requestcode == PICK_IMAGE){
        imageUrl = data.getData();
        im.setImageURI(imageUrl);
    }
} 

因此,当我想在ActivityResult(int requestCode、int resultCode、Intent data)方法上添加另一个受保护的void时,它会显示错误并告诉我它已经创建了

您可以使用它从相机拍摄照片

单击按钮或任何图像

**单击时将调用此方法**

protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
    if (requestCode == CAMERA_REQUEST && resultCode == Activity.RESULT_OK) {  
        Bitmap photo = (Bitmap) data.getExtras().get("data"); 
        imageView.setImageBitmap(photo);//set image to Imageview
    }  
} 

不能有两个名称和参数列表完全相同的方法。相反,您应该将代码添加到现有的
onActivityResult()
方法中,以实现从相机检索pic的逻辑。只需将
else if
子句添加到现有的
if
语句中:

if (resultcode == RESULT_OK) {
    if (requestcode == PICK_IMAGE) {
        // get image from gallery
    } else if (requestcode == CAMERA_REQUEST) {
        // get image from camera
    }
}

欢迎来到堆栈溢出。除了用英语描述外,最好给我们看一下实际的代码。请务必阅读一些提示。
Bundle
没有
get()
方法,因此无法编译此答案。相反,我认为您需要执行
data.getStringExtra(“数据”)
这是图形文件的URI。@JannatullHaque如果我的答案解决了您的问题,请务必单击左侧的复选标记接受它。
if (resultcode == RESULT_OK) {
    if (requestcode == PICK_IMAGE) {
        // get image from gallery
    } else if (requestcode == CAMERA_REQUEST) {
        // get image from camera
    }
}