我对Android开发和Java相对较新(同时学习......)。
我的问题是:如果我在main.xml中设置了一个按钮,我仍然需要在我的Activity中创建按钮,对吧?就像XML只控制按钮的外观一样,但你需要通过执行类似
的操作来实际创建一个按钮private Button myButton;
只是想确保我在概念上有这个清晰。您在班级中创建了一个对象,然后告诉Android执行类似
的操作myButton = (Button) findViewById(R.id.my_button);
只是想确保我对此很清楚。
答案 0 :(得分:2)
是的,这正是您需要做的。
为了帮助您进一步构思流程,Android会为您的小部件(例如您的main.xml
)和不同的布局使用Button
。这是您需要定义小部件的地方。
现在你的项目内部需要创建你的widget变量
Button myButton = (Button) findViewById(R.id.my_button);
创建myButton
对象后,您就可以开始向按钮添加功能,例如单击时应该执行的操作(虽然可以在main.xml
文件中定义具有android:onClick
属性)
myButton.setOnClickListener(this);
public void onClick(View v) {
// code to process Button click
}
我希望这会澄清一些事情,如果你需要我详细说明,请告诉我。
答案 1 :(得分:1)
从技术上讲,您不必声明按钮变量。您可以通过始终调用findViewById方法来操作该按钮,如下所示:
((Button)findViewById(R.id.my_button)).SomeButtonMethod();
就个人而言,我建议您声明按钮变量,因为您可能会不止一次地引用它,并且您不想浪费cpu来查找已经找到的东西的冗余任务。