【发布时间】:2018-02-23 23:40:18
【问题描述】:
背景
我正在通过Pragnesh Ghota's solution of one onClick listener for every button 以dymmeh's individual initialization solution 的格式在for 循环中动态创建按钮:
LinearLayout someLayout = (LinearLayout) findViewById(R.id.theRoom);
for (int i = 0; i < neededButtons.length; i++){
neededButtons[i] = new Button(this);
neededButtons[i].setText(names[i]);
neededButtons[i].setOnClickListener(this);
LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT
);
}
此外,我通过在活动类中实现 View.OnClickListener 来制作one onClick listener。我的班级是这样定义的:
public class RecallActivity extends AppCompatActivity implements View.OnClickListener{
...
}
我已经按照Pragnesh Ghota's solution 的其他步骤成功了。不过……
问题
Pragnesh Ghota's solution 的第四步提到使用 case 语句来检查是否有任何按钮被点击。当按钮数量已知时,此方法有效。但是,由于我遵循dymmeh's solution 中列出的格式,所以在执行之前我不知道要检查多少个按钮。
问题
如何在重写的 onClickMethod 中为动态数量的按钮执行控制流语句?
【问题讨论】:
标签: android button onclicklistener control-flow