就是说,main.xml里面定义了很多个Button,在.java里面怎样用循环拿出来。
我是定义一个Button数组,然后for循环一个个用getViewById(*)一个个拿出来,结果不行,求解决方法...!菜鸟刚学...

解决方案 »

  1.   


    List btnList = new ArrayList<Button>();
            LinearLayout layout = (LinearLayout)findViewById(R.layout.XXX); //id为layout的ID
            for(int i = 0; i < layout.getChildCount(); i++){
             if(layout.getChildAt(i) instanceof Button){
             btnList.add((Button)layout.getChildAt(i));
             }
            }
      

  2.   

    循环取Button的ID就用这种方式
    List btnList = new ArrayList<Integer>();
            LinearLayout layout = (LinearLayout)findViewById(R.layout.XXX);
            for(int i = 0; i < layout.getChildCount(); i++){
             if(layout.getChildAt(i) instanceof Button){
             btnList.add(((Button)layout.getChildAt(i)).getId());
             }
            }