小编Jas*_*son的帖子

通过意图打开相机应用程序并将图片保存在SD和imageView上

可能重复:
使用Camera并将捕获的结果存储在android中的SDCard中

我想从相机应用程序获取图片,将其保存在SD上并设置imageView.我在下面做了一个代码.保存和imageView有时工作.但有时图片保存在SD上,而imageView不起作用.

当imageView不起作用时,似乎mOutUri在onActivityResult中变为null.

我试图在clkbutton中的sharedPreferences上保存mOutUri.我可以在onActivityResult中看到uri但是imageView不起作用.此时,mOutUri也为空.

public void clkbutton(View v){
    Intent intent = new Intent();

    // open camera app
    intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);

    // save data in SD card
    Date date = new Date();
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd-kk-mm-ss");
    String newPicFile = df.format(date) + ".jpg";
    mNewPicFile = newPicFile;
    String outPath = "/sdcard/" + newPicFile;
    File outFile = new File(outPath);
    mOutUri = Uri.fromFile(outFile);

    intent.putExtra(MediaStore.EXTRA_OUTPUT, mOutUri);       
    startActivityForResult(intent, REQUEST_CAPTURE_IMAGE);
}


 @Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    ImageView imageView = (ImageView) findViewById(R.id.image_view);
    imageView.setImageURI(mOutUri);    
 } …
Run Code Online (Sandbox Code Playgroud)

camera android sd-card android-intent imageview

5
推荐指数
1
解决办法
1731
查看次数

标签 统计

android ×1

android-intent ×1

camera ×1

imageview ×1

sd-card ×1