weixin_42510016 2014-05-13 13:07
浏览 211
已采纳

请教下这样注册button事件为什么没有效果

代码:

 

TableLayout tableLayout = (TableLayout) this.getLayoutInflater().inflate(R.layout.activity_main, null);

 

for(int i = 0 ; i < tableLayout.getChildCount() ; i++) {

View view = tableLayout.getChildAt(i);

if(view instanceof TableRow) {

for(int j = 0 ; j < ((TableRow)view).getChildCount() ; j++) {

View view1 = ((TableRow)view).getChildAt(j);

if(view1 instanceof Button) {

((Button)view1).setOnClickListener(this);

}

}

}

}

 

布局文件:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:id="@+id/TableLayout1"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    tools:context="${packageName}.${activityClass}" >

 

    <TableRow

        android:id="@+id/tableRow1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content" >

 

        <Button

            android:id="@+id/button1"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="图片展示" />

 

        <Button

            android:id="@+id/button2"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button3"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button4"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

    </TableRow>

 

    <TableRow

        android:id="@+id/tableRow2"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content" >

 

        <Button

            android:id="@+id/button5"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button6"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button7"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button8"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

    </TableRow>

 

    <TableRow

        android:id="@+id/tableRow3"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content" >

 

        <Button

            android:id="@+id/button9"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button10"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button11"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

        <Button

            android:id="@+id/button12"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="Button" />

 

    </TableRow>

 

 

</TableLayout>

 

  • 写回答

4条回答 默认 最新

  • hadeslbf 2014-05-13 16:05
    关注

    TableLayout tableLayout = (TableLayout) this.getLayoutInflater().inflate(R.layout.activity_main, null);

    你的代码逻辑有问题,你这里只是把TableLayout从布局中解压出来,并没有把它添加到当前的控件中,正确使用方式是:

    TableLayout tableLayout = findById(R.id.TableLayout1);

    然后再进行遍历就可以了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题