以下のスクリーンショットのように、内部メモリにギャラリー フォルダを作成したいと思います。
アルバムをクリックすると、その中の画像のリストが表示されます。
String dirPath = getFilesDir().getAbsolutePath() + File.separator + "newfoldername";
File projDir = new File(dirPath);
以下のスクリーンショットのように、内部メモリにギャラリー フォルダを作成したいと思います。
アルバムをクリックすると、その中の画像のリストが表示されます。
String dirPath = getFilesDir().getAbsolutePath() + File.separator + "newfoldername";
File projDir = new File(dirPath);
アプリのフォルダーを作成するための以下のコードは、フォルダーの文字列名を取得し、SD カードが使用可能かどうかを確認し、SD カードが使用可能かどうかを確認し、写真フォルダーにその名前のフォルダーを作成する場合は、Sd カードが存在しない場合はフォルダーを作成します。 data/data.com.myapp/files/yourFolder のように、アプリがインストールされている内部メモリと同じ名前
public File createDirectoryForApp(Context con, String dirName)
{
File directory=null;
/*
* This sections checks the phone to see if there is a SD card. if
* there is an SD card, a directory is created on the SD card
*/
if (isExternalStorageWritable()) {
// search for directory on SD card
directory = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)
+ "/"+dirName+"/");
// if no directory exists, create new directory to store test
// results
if (!directory.exists()) {
directory.mkdir();
}
}
else
{
//create new file directory object in internal memory as no SD card is available
directory = new File(con.getFilesDir()
+ "/"+dirName+"/");
// if no directory exists, create new directory
if (!directory.exists()) {
directory.mkdir();
}
}
return directory;
}
//method used above to check external storage
public static boolean isExternalStorageWritable() {
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)) {
return true;
}
return false;
}
特定の拡張子を持つファイルと、内部ディレクトリ (ファイルでもある) 内のその他のファイルを取得するには、次の方法を使用できます。
private List<File> getListFiles(File parentDir) {
ArrayList<File> inFiles = new ArrayList<File>();
File[] files = parentDir.listFiles();
for (File file : files) {
if (file.isDirectory()) {
inFiles.addAll(getListFiles(file));
} else {
if(file.getName().endsWith(".png")){
inFiles.add(file);
}
}
}
return inFiles;
}
このすべての情報を視覚的に表現するには、レイアウトをどのように設計し、これらのファイルから取得した後にデータを表示するかがあなた次第です。