これが私の最初の質問です。疑問点を探ってきました。同様の質問を見つけましたが、正確な答えが得られませんでした。だから私が何か間違ったことをしたなら、私を許してください。アプリの ImageView から SD カードのフォルダーに画像を保存しようとしています。コードは次のとおりです:-
public void save(View view) {
myImage.setDrawingCacheEnabled(true);
Bitmap imgV = myImage.getDrawingCache();
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/AVP_saved");
String fname="Image.png";
File file = new File(myDir, fname);
try {
FileOutputStream out = new FileOutputStream(file);
imgV.compress(Bitmap.CompressFormat.PNG, 90, out);
out.flush();
out.close();
Toast.makeText(this, "Image Downloaded", 7000).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(this, e.getMessage(), 8000).show();
}
}
「保存」メソッドは、ボタンに割り当てられたメソッドです。「myImage」は、その ID で見つかった ImageView です。マニフェストで既にアクセス許可を設定しています。問題は、画像が保存されず、パスが存在しないということです。私自身が「AVP_saved」フォルダを作成すると、画像が保存されます。ボタンをクリックしたときにアプリがフォルダーを自動的に作成するように、このコードで何を編集する必要がありますか?
御時間ありがとうございます!