多个按钮初始化
Multiple button initialization
我有大约 10 个按钮,我想通过调用一个方法来初始化它们。我的意思是现在我有很多:
button= (Button) findViewById(R.id.button);
button1= (Button) findViewById(R.id.button1);
我想要一个这样的方法并在每个按钮初始化时调用它:
private void initialize(Button mybutton){
mybutton= (Button) findViewById(R.id.mybutton);
}
private Button initialize(int ID){
return (Button) findViewById(ID);
}
并像这样使用它
button1= initialize(R.id.button1);
尝试这种方式传递您的 Button
以及您的 Button
的 ID
像这样改变initialize
private void initialize(Button mybutton, int ID){
mybutton= (Button) findViewById(ID);
}
并像这样调用您的 initialize
方法
initialize(button,R.id.button)
在此方法中传递所有按钮及其各自的 ID:
private void initialize(){
button= (Button) findViewById(R.id.button);
button1= (Button) findViewById(R.id.button1);
...
}
并在您的 onCreate()
方法中调用 initialize()
这样做
ArrayList<Button> buttons=new ArrayList<>();
String[] buttonIds = {R.id.btn1,R.id.btn2,R.id.btn3};
for(int i=0;i<buttonIds.length-1;i++)
{
Button b = (Button) findViewById(buttonIds[i]);
buttons.add(b);
}
我认为使用 ButterKnife 更好。你可以在 ButterKnife 上做个很好的笔记 here
@BindView(R.id.title) TextView title;
@BindView(R.id.subtitle) TextView subtitle;
@BindView(R.id.footer) TextView footer;
这是 initialisation
和 declaration
使用 ButterKnife
的示例
我有大约 10 个按钮,我想通过调用一个方法来初始化它们。我的意思是现在我有很多:
button= (Button) findViewById(R.id.button);
button1= (Button) findViewById(R.id.button1);
我想要一个这样的方法并在每个按钮初始化时调用它:
private void initialize(Button mybutton){
mybutton= (Button) findViewById(R.id.mybutton);
}
private Button initialize(int ID){
return (Button) findViewById(ID);
}
并像这样使用它
button1= initialize(R.id.button1);
尝试这种方式传递您的 Button
以及您的 Button
ID
像这样改变initialize
private void initialize(Button mybutton, int ID){
mybutton= (Button) findViewById(ID);
}
并像这样调用您的 initialize
方法
initialize(button,R.id.button)
在此方法中传递所有按钮及其各自的 ID:
private void initialize(){
button= (Button) findViewById(R.id.button);
button1= (Button) findViewById(R.id.button1);
...
}
并在您的 onCreate()
方法中调用 initialize()
这样做
ArrayList<Button> buttons=new ArrayList<>();
String[] buttonIds = {R.id.btn1,R.id.btn2,R.id.btn3};
for(int i=0;i<buttonIds.length-1;i++)
{
Button b = (Button) findViewById(buttonIds[i]);
buttons.add(b);
}
我认为使用 ButterKnife 更好。你可以在 ButterKnife 上做个很好的笔记 here
@BindView(R.id.title) TextView title;
@BindView(R.id.subtitle) TextView subtitle;
@BindView(R.id.footer) TextView footer;
这是 initialisation
和 declaration
使用 ButterKnife