gpt4 book ai didi

Android 按钮 ID

转载 作者:太空狗 更新时间:2023-10-29 12:56:43 26 4
gpt4 key购买 nike

如果我在 xml 中创建了一个按钮并且我想多次使用这个按钮但给它们唯一的 ID,我该怎么做?我不知道我会有多少个按钮,所以我无法在我的 xml 文件中创建多个按钮。我希望能够在运行程序时更改按钮 ID。我试过做 button.setId() 但后来一切都坏了,不会工作。

最佳答案

您可以制作一个独立的 button.xml 文件(或者甚至将其作为一种样式),然后根据需要在您的代码中扩充它。

例如,假设您有一个表示国家列表的字符串数组,并且您希望每个国家都有一个按钮。这很好,因为如果您添加或删除任何内容,您只需修改数组,而不用修改 xml 或 for 循环。

LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);  
String[] countries = {"US", "Canada", "UK", "Australia"};
String country;
// Don't forget to add the following layout to your xml.
LinearLayout buttonLayout = (LinearLayout) findViewById(R.id.buttonLayout);
buttonLayout.removeAllViews();
for (int i = 0; i < countries.length(); i++) {
country = countries.getString(i);
Button temp = (Button)inflater.inflate(R.layout.button);
// Don't forget that id is an int, not a string.
button.setId(id);
button.setText(country);
buttonLayout.addView(temp);
}

奖励:您还可以将此按钮包含在另一个 xml 文件中,并按如下方式更新 include 语句中的 id:

<include layout="@layout/button" 
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 1"
/>

关于Android 按钮 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5866915/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com