尝试创建一个简单的 ABC 和 123s 应用程序。我的初始布局有两个按钮,1 个用于字母,1 个用于数字。如果单击字母按钮,我想转到下一个 fragment ,其中包含所有字母 (A-Z) 的 26 个按钮。对于数字,10 个按钮 (0-9)。我的问题是,如何有效地使用 26 个按钮/10 个按钮填充布局文件,而不将每个按钮都写入 XML 文件中?
最佳答案
您可以通过编程方式向 View 添加按钮。在 fragment 的 onCreateView 函数中尝试一下。
//mView is your fragment root, and container is defined in XML
LinearLayout container = (LinearLayout)mView.findViewById(R.id.alpha_container)
String[] letters = {A, B, C, ..., Z};
for(int i=0; i<letters.length; i++) {
Button letter_btn = new Button(getActivity());
letter.setText(letters[i]);
container.addView(letter_btn, i);
}
这将以编程方式为字母数组中的每个元素创建一个按钮。您可以相应地附加 onClickListener 并通过文本内容跟踪按钮或给它们一个标签/id。
关于java - 在一个布局屏幕中创建多个 (26) 个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38596461/