我創建了一個For循環,它爲每個ImageView設置一個ID和一個ClickListener。當點擊被按下時,OnClickListner或者似乎無法找到該ID,或者根本沒有被調用。Android:陣列項目的監聽器
public int[] myResources = {R.id.bblock1, R.id.bblock2, R.id.bblock3, R.id.bblock4, R.id.bblock5, R.id.bblock6, R.id.bblock7, R.id.bblock8};
ImageView[] bblock = new ImageView[7];
for(int i = 0; i==myResources.length; i++) {
bblock[i]=(ImageView)layout.findViewById(myResources[i]);
bblock[i].setOnClickListener(ActivityCheck);
}
View.OnClickListener ActivityCheck = new View.OnClickListener(){
public void onClick (View v){
if(v.getId() == (R.id.bblock1)){
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/#!/itz_jonno"));
startActivity(browserIntent);
}
^^ OnClickListener無法找到視圖。 雖然,不使用數組和循環下面的代碼不工作:
ImageView bblock1=(ImageView)layout.findViewById(R.id.bblock1);
bbblock1.setOnClickListener(ActivityCheck);
任何想法,爲什麼數組不會工作,但標準代碼會?
使用條件,如果..switch .. – NovusMobile 2012-01-31 07:03:52