带有网格视图内按钮的线性布局

Linearlayout with buttons inside a gridview

我目前有一个应用程序,其网格布局包含 6 种成分。每种成分都是一个带有图像、名称和两个按钮的线性布局。现在困难的部分是随着这些成分的变化(草莓、苹果、橙子等),所有东西都需要动态地以编程方式生成。

现在我正在研究使用适配器将 gridLayout 更改为 gridView,以便在我获得更多成分时为将来的扩展留出空间。大多数 gridview 示例包括图像和文本。现在是否可以有两个按钮,我可以通过编程方式在 gridview 中设置它们的 id?如果有人能指出正确的方向或更复杂的 gridview 示例,我将不胜感激。

更新:recycleview 帮了我大忙。感谢您的回答。

我不明白你为什么不能只在 GridView 适配器中设置按钮?

无论出于何种原因不起作用,您都可以遍历 GridView 的子项,并针对每个子项,遍历其 LinearLayout 以设置按钮。我没试过这个,但它看起来像:

for (int i = 0; i < myGridView.getChildCount(); i++) {
     LinearLayout childLayout = (LinearLayout) mGridView.getChildAt(i);
         for (int j = 0; j < childLayout.getChildCount(); j++) {
             if (childLayout.getChildAt(j) instanceof Button) {
                 // Set the button... 
             }
     }
}

我认为最适合您的是带有 GridLayoutManager 的 Recyclerview。

只需查看有关如何使用 RecyclerView 的示例。