0

ウィジェットがSDカードに保存された画像を表示するようにしようとしています。これまでのところ、私はこれを見つけました:

String imageInSD = String.format("/sdcard/facepalm%d.jpeg", counter%10);    
Bitmap bitmap = BitmapFactory.decodeFile(imageInSD);
remoteViews.setBitmap(R.id.imageview1, "setImageBitmap", bitmap);
ImageView myImageView = (ImageView)findViewById(R.id.imageview1);
myImageView.setImageBitmap(bitmap);

コメント行により、何らかの理由でウィジェットがクラッシュします。これを機能させる方法を見つけたいだけです。

4

2 に答える 2

0

画像をビットマップにデコードする必要はなく、画像パスから画像のURIを取得するだけです:

File tempFile = new File(Environment.getExternalStorageDirectory()+"/XX/facepalm%d.jpeg");
Uri  imgUri=Uri.fromFile(tempFile);
ImageView  imageView=(ImageView)findViewById(R.id.imageuri);
imageView.setImageURI(imgUri);
于 2012-07-03T18:57:59.870 に答える
0

次のコードを確認してください。

Bitmap bitmap = null;
    Boolean isSDPresent = android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
    if(isSDPresent)
    {
       String pathOfImageInSD = Environment.getExternalStorageDirectory()+"/"+"facepalm.png";
       bitmap = BitmapFactory.decodeFile(pathOfImageInSD);
    }
ImageView myImageView = (ImageView)findViewById(R.id.imageview1);
myImageView.setImageBitmap(bitmap);
于 2012-07-03T18:59:44.100 に答える