如何处理表格布局的每个单元格上的单击事件

Lee*_*eem 5 android android-widget android-emulator android-layout

我有一个表布局,就像这个一样简单.

我需要的是允许最终用户单击表格的每个单元格,并在每个单元格上执行某些操作.

但是,似乎android 表格布局仅支持基于点击事件的,没有基于点击事件的单元格.如何摆脱这个?

cru*_*bio 6

您需要使用android:clickable="true"android:onClick="clickHandlerCell"在XML布局定义文件中处理单击事件,在我的情况下,在LinearLayout中.

要识别单击的单元格,您可以view.setTag(uniqueID)在创建单元格时使用标记每个单元格的视图.在clickHandlerCell函数中用于view.getTag()获取您的单元格的标识.


Ven*_*nky 2

尝试此代码以单击特定的表行:

TableLayout contact_table = (TableLayout)findViewById(R.id.contact_table);
final View row=contact_table.getChildAt(i);
row.setOnClickListener(new OnClickListener(){

    @Override
    public void onClick(View v){
        // TODO Auto-generated method stub
        row_id=contact_table.indexOfChild(row);
    }
});
Run Code Online (Sandbox Code Playgroud)

  • 该 row_id 不能帮助OP确定该行上的哪个单元格被单击。 (2认同)