【发布时间】:2016-12-20 14:46:44
【问题描述】:
我有一个 textView,它首先在 Main Activity onCreate 文件中创建。像这样
Button btn = new Button();
然后我设置它的一些属性,例如 Id 和一些 LayoutParams
btn.setText("Button");
btw.setId("btn");
btn.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT));
所以我的问题是如何在同一个文件中访问此 ID 以更改按钮的文本。喜欢
findViewById(R.id.btn);
除非我这样做,否则我会收到错误消息。我假设因为这没有在 XML 中定义。
编辑:我无法在 xml 中预先定义这些按钮,因为它们是根据程序的其他因素生成的。
谢谢。
【问题讨论】:
-
为什么需要它的 id?将
Button定义为MainActivity中的全局变量,并在该文件中的任何位置使用它。 -
@Yildirim 是的,但我需要 ID,因此我可以根据输入相应地更新按钮。
-
findViewById通常用于扩充您在活动的相应 XML 文件中定义的 UI 元素,而不是用于您在 Java 代码中创建的 UI 元素。
标签: java android button layout