【发布时间】:2010-11-25 04:25:06
【问题描述】:
private final Button[] BUTTONS = {
btn1, btn2, btn3,btn4
};
...
btn1 = (Button) this.findViewById(R.id.btn_1);
btn2 = (Button) this.findViewById(R.id.btn_2);
btn3 = (Button) this.findViewById(R.id.btn_3);
btn4 = (Button) this.findViewById(R.id.btn_4);
...
int n = BUTTONS.length;
for(int i=0; i<n; i++) {
if(DEBUG) Log.d(TAG, String.valueOf(i));
BUTTONS[i].setOnClickListener(this);
}
抛出 NullPointerException,而
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
工作正常。对我来说没有任何意义。
【问题讨论】:
-
您使用了四次 btn1。也许 btn2、3 或 4 不存在(即 findViewById 返回 null)?顺便说一句,你为什么从 1 开始?为什么不是 0?
-
对不起,我在做实验。我现在已经更正了代码。
标签: android arrays button for-loop nullpointerexception