2017-08-25 81 views
0
String getValuesPressed(){ 

    for(int i = 0; i < buttonList.length; i++){ 
     final int j = i; 

     buttonList[i].setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       if(j == 0){//error occurs here 
        //do stuff 
       } 

      } 
     }); 
    } 

    return textOnScreen[finalI]; 

} 

下面的线表示错误如何Android中使用循环来使按钮的多个可点击

buttonList[i].setOnClickListener(new View.OnClickListener() 

错误:

can't resolve this method

+0

'buttonList'数组的类型是什么? –

回答

0

只是使用setTag()来按钮和getTag()来获取被点击的按钮的位置,并根据位置做你的东西。

ArrayList<Button> buttonArrayList = new ArrayList<>(); 
for (int i = 0; i < 10; i++) { 
      Button button = new Button(this); 
      button.setTag(i); 
      buttonArrayList.add(button); 

      button.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View view) { 
        int position = (int) view.getTag(); 
        if (position == 0) { 
         //do stuff 
        } 

       } 
      }); 
     } 
相关问题