如何显示图像文件夹?

时间:2013-11-06 20:33:10

标签: android image directory horizontalscrollview

你有这个代码在Horizo​​ntalScrollView中显示3个图像它完美,但我需要显示文件夹中的图像,我不知道具体的文件数,所以如何显示一个非特定数量的图像来自一个文件夹X ??

有人请帮助:)

<HorizontalScrollView 
    android:layout_below="@+id/button1"
    android:layout_width="300dp"
    android:layout_height="350dp">
    <LinearLayout 
        android:layout_width="300dp"
        android:layout_height="350dp">

        <ImageView
            android:layout_width="300dp"
            android:layout_height="350dp"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/mc1" />
        <ImageView
            android:layout_width="300dp"
            android:layout_height="350dp"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/mc2" />
        <ImageView
            android:layout_width="300dp"
            android:layout_height="350dp"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/bk1" />
        <ImageView
            android:layout_width="300dp"
            android:layout_height="350dp"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/bk2" />

    </LinearLayout>
</HorizontalScrollView>

1 个答案:

答案 0 :(得分:1)

为您的布局指定一个ID(在下面的例子中为myLinearLayout),循环浏览文件夹并创建一个新的imageview并将其添加到您的布局

File sdDir = new File("FOLDER PATH");
File[] sdDirFiles = sdDir.listFiles();
for(File singleImageFile : sdDirFiles){
    ImageView myImageView = new ImageView(context);
    Bitmap bm = BitmapFactory.decodeFile(singleImageFile.getAbsolutePath());
    myImageView.setImageBitmap(bm);
    myLinearLayout.addView(myImageView);
}

确保你有

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />