如何定义一大组imageViews?

时间:2018-05-20 09:48:34

标签: android android-layout

我在android studio中有64个图像视图,我不想像这样一个一个地定义它们:

ImageView iv11 = findViewById(R.id.iv11);
ImageViews的id由iv11开始(第一个数字是行和第二个col),而iv88结束有没有办法一起定义所有这些?

2 个答案:

答案 0 :(得分:0)

您应该使用adapter填充您的观看次数。由于听起来您需要将图像显示在网格中,因此可以将GridView与适配器一起使用。

有很多教程可以指导你这样做;例如:您可以查看this作为开始。

希望这有帮助。

答案 1 :(得分:0)

通过for循环构建您的ImageView ID并调用getResources().getIdentifier()

for (int col = 0 ; col < 8; ++col) {
    for (int row = 0 ; row < 8; ++row) {
        String idStr = "iv" + String.valueOf(row) + String.valueOf(col);
        @IdRes int id = context.getResources().getIdentifier(idStr, "id", context.getPackageName());

        ImageView imgView = findViewById(id);
        // Do something with your image
    }
}

无论如何,屏幕上有ImageView这么多,应该由ListViewRecyclerView等适配器来管理...