我正在循环访问按钮,如下所示。
@Override
public void onClick(View v) {
int clickedButtonId=v.getId();
for(int buttonIndex=1;buttonIndex<=MAX_BUTTON;buttonIndex++) {
int buttonId = getResources().getIdentifier("button" + buttonIndex, "id", getPackageName());
if(clickedButtonId==buttonId){
showToast(buttonIndex);
openLink(LIKS[buttonIndex-1]);
break;
}
}
}
是好的做法还是不好的做法?
最佳答案
在循环中仅在UI线程中访问按钮的ID没什么大不了,但是如果您对按钮执行大量处理,则会大大减慢UI活动屏幕。我建议使用AsyncTask进行此类处理。
有关更多详细信息,请参见https://developer.android.com/reference/android/os/AsyncTask.html