Was ich will: Klicken Sie auf eine Schaltfläche sollte alle Bilder, die in einem bestimmten Ordner auf der SD-Karte sind.Öffnen Sie alle Bilder in einem Ordner (SD-Karte) sofort auf Knopfdruck
Was passiert: Wenn der Ordner mehr als ein Bild enthält, zeigt die App nur ein einzelnes Bild an.
Button-Click-Methode Code:
private void showGallery() {
if ((personName.getText().toString() != null && !personName.getText().toString().isEmpty())
&& (mobileNo.getText() != null && !mobileNo.getText().toString().isEmpty())) {
File folder = new File(Environment.getExternalStorageDirectory(),
photoPath + personName.getText().toString() + "_" + mobileNo.getText().toString() + "/");
File[] allFiles = folder.listFiles();
if (allFiles != null && allFiles.length > 0) {
for (File child : allfiles) {
new SingleMediaScanner(getActivity(), child);
}
}
}
}
SingleMediaScanner Code:
public class SingleMediaScanner implements MediaScannerConnection.MediaScannerConnectionClient {
private MediaScannerConnection mMs;
private File mFile;
public SingleMediaScanner(Context context, File f) {
mFile = f;
mMs = new MediaScannerConnection(context, this);
mMs.connect();
}
public void onMediaScannerConnected() {
mMs.scanFile(mFile.getAbsolutePath(), "image/*");
}
public void onScanCompleted(String path, Uri uri) {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setData(uri);
startActivity(intent);
mMs.disconnect();
}
}
}
wo möchten Sie Ihre Bilder angezeigt werden? in einer Listenansicht? –
@alexeypolusov: Nein, ich möchte diesen Ordner entweder in der Galerie-App öffnen oder den Ordner öffnen. –