0

好朋友,我这几天一直在努力解决这个问题,我看到论坛里有好几个,但没有一个能够解决我的问题。

我有一个 ImageView 和一个 Button 来拍照。如果是按钮,我有以下代码:

 oButton.setOnClickListener(new OnClickListener() {             
                    public void onClick(View v) {
                        //oImageActual is the final ImageView
                        oImageActual = oView;
                        Intent intent =  new Intent(MediaStore.ACTION_IMAGE_CAPTURE);                           
                        startActivityForResult(intent, TAKE_PICTURE);
                    }                       
                });

和活动的结果,我有这个:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == TAKE_PICTURE && (resultCode == Activity.RESULT_OK)) {            
        if (data != null) {
            if (data.hasExtra("data")) {                    
                 Bitmap photo = (Bitmap) data.getExtras().get("data"); 
                 oImageActual.setImageBitmap(photo);                    
            }
        }
    }
}

问题是它工作了好几次,又失败了好几次,我的意思是,funcina,拍照并把它放在 ImageView 中,但很多时候你关闭了应用程序。我必须重新启动手机才能再次工作。

这是我们遇到的主要问题:

(...)java.lang.RuntimeException: 将结果 ResultInfo{who=null, request=1, result=-1, data=Intent { act=inline-data (has extras) }} 传递给 activity(... )

如果有人有答案,请在这里等待,谢谢。

4

1 回答 1

0

“拍摄照片并将其放入 ImageView 中,但很多时候您关闭了应用程序。”

如果我理解这一点,您将在返回结果之前关闭活动。onActivity result 只有在整个事件期间父activity没有关闭的情况下才会得到结果。

于 2012-04-30T18:26:07.923 回答