带有网格视图内按钮的线性布局
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 的示例。
我目前有一个应用程序,其网格布局包含 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 的示例。