android-如何在TableLayout中单击特定的TableRow

我制作了自己的复合控件,该控件使用TableLayout显示数据网格,并根据与对象绑定的Object Array在循环中以编程方式添加Tablerows,现在,我想选择一个具有特定数据的特定行以供使用一个方法.那么,如何选择检索其数据的特定行来委派方法呢?

解决方法:

嗨,您可以尝试这样的事情,

 // create a new TableRow

    TableRow row = new TableRow(this);
    row.setClickable(true);  //allows you to select a specific row

    row.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            v.setBackgroundColor(Color.GRAY);
            System.out.println("Row clicked: " + v.getId());

           //get the data you need
           TableRow tablerow = (TableRow)v.getParent();
           TextView sample = (TextView) tablerow.getChildAt(2);
           String result=sample.getText().toString();
        }
    });

欲了解更多信息,请参考Android TableRow

上一篇:Android:隐藏/显示表格行


下一篇:TableLayout中的按钮在Android 1.6和2.1(而非1.5或2.2)上裁剪