外部ストレージから画像を読み込もうとしています。権限を設定し、さまざまな方法を試しましたが、どれも機能しません。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(file.toString());
tv.setImageBitmap(bitmap);
そしてこれは、
FileInputStream streamIn = new FileInputStream(file);
Bitmap bitmap = BitmapFactory.decodeStream(streamIn);
tv.setImageBitmap(bitmap);
streamIn.close();
ファイルがある場合abc.jpg
sdcard
の場合:
String photoPath = Environment.getExternalStorageDirectory() + "/abc.jpg";
bitmap
を取得します。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(photoPath, options);
または
Bitmap bitmap1 = BitmapFactory.decodeFile(photoPath);
メモリ不足エラーを回避するために以下のコードを使用することをお勧めします...
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 8;
final Bitmap b = BitmapFactory.decodeFile(photoPath, options);
上記の問題を回避するには、Picasso(Android用の強力な画像ダウンロードおよびキャッシュライブラリ)を使用できます。
方法?
Picasso.with(context).load("file:///Android_asset/DvpvklR.png").into(imageView2);
Picasso.with(context).load(new File(...)).into(imageView3);
File sdCard = Environment.getExternalStorageDirectory();
File directory = new File (sdCard.getAbsolutePath() + "/Pictures");
File file = new File(directory, "image_name.jpg"); //or any other format supported
FileInputStream streamIn = new FileInputStream(file);
Bitmap bitmap = BitmapFactory.decodeStream(streamIn); //This gets the image
streamIn.close();
と呼ばれる関数があります
createFromPath(String)
drawableクラスで。だからステートメント
String path="/storage/..<just type in the path>";
Drawable.createFromPath(path);
ドローアブルオブジェクトを返します
ファイルパスがある場合は、BitmapFactoryを直接使用しますが、アルファを保持する形式を使用するように指示します。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(photoPath, options);
selected_photo.setImageBitmap(bitmap);
以下のように、フォルダから画像のパスを取得します。次に、ファイルをビットマップとしてデコードします。
File file= new File(Android.os.Environment.getExternalStorageDirectory(),"Your folder");
Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath())