基本问题:创建一个按钮(或任何东西)

时间:2010-11-07 02:16:55

标签: java android

我对Android开发和Java相对较新(同时学习......)。

我的问题是:如果我在main.xml中设置了一个按钮,我仍然需要在我的Activity中创建按钮,对吧?就像XML只控制按钮的外观一样,但你需要通过执行类似

的操作来实际创建一个按钮
private Button myButton;

只是想确保我在概念上有这个清晰。您在班级中创建了一个对象,然后告诉Android执行类似

的操作
myButton = (Button) findViewById(R.id.my_button);

只是想确保我对此很清楚。

2 个答案:

答案 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来查找已经找到的东西的冗余任务。