我想要的是什么:点击按钮可以打开SD卡上特定文件夹中的所有图像。
正在发生的事情:如果文件夹中有多个图片,那么该应用仅显示一个图片。
按钮点击方法代码:
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代码:
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();
}
}
}
答案 0 :(得分:0)
使用Swipable卡片库(Tinder like)。这将显示所有图像的堆栈。 以下链接对您有所帮助: https://android-arsenal.com/details/1/222