你必须在这里忍受我,因为我确信这是一直被问到的,但我没有设法搜索它。
如果我有一个最小的Android应用程序,我似乎必须在像onCreate这样的事件中声明我的所有控件,那么我如何在函数中引用这些控件,因为这些控件在应用程序“创建”之前未初始化?
public class MyActivity extends ActionBarActivity {
public void myFunction(){
myButton.setText("Java is hard")
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
final button myButton = (Button) findViewById(R.id.designerbutton);
}
每次调用函数时,是否必须将控件作为参数传递?这看起来有点笨拙。
答案 0 :(得分:1)
有几种变量:
- 类中的成员变量 - 这些变量称为字段。
- 方法或代码块中的变量 - 这些变量称为局部变量。
- 方法声明中的变量 - 这些变量称为参数。
Bicycle类使用以下代码行来定义其字段:
public int cadence;
public int gear;
public int speed;
字段声明按顺序由三个组件组成:
- 零个或多个修饰符,例如public或private。
- 该字段的类型。
- 该字段的名称。
Bicycle的字段名为
cadence
,gear
和speed
,并且都是数据类型integer(int)。 public关键字将这些字段标识为公共成员,可由任何可以访问该类的对象访问。
答案 1 :(得分:0)
您可以将其存储为与任何其他Java对象一样的属性
public class MyActivity extends ActionBarActivity {
private Button myButton;
public void myFunction(){
myButton.setText("Java is hard")
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
myButton = (Button) findViewById(R.id.designerbutton);
}