单击表格行的背景颜色

时间:2013-11-06 15:24:25

标签: java android android-tablelayout

在我的Android应用程序中,我有一张桌子。当用户单击一行时,将打开一个新页面。

如何为行设置背景颜色,以便用户更容易看到他/她选择的内容?

颜色应仅在半秒钟左右可见,并在返回页面时消失。

任何建议都表示赞赏。

干杯

3 个答案:

答案 0 :(得分:3)

通常我会使用选择器进行聚焦并将可绘制/布局设置为表项的背景。

例如,我使用此布局在当前应用中创建列表的背景:

 <LinearLayout

    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/btn_nv"
    android:orientation="horizontal"
    android:paddingLeft="@dimen/padding_extra_small"
    android:paddingRight="@dimen/padding_extra_small" >

,后台drawable是名为btn_nv的xml文件(在drawable文件夹中),其内容如下:

<?xml version="1.0" encoding="utf-8"?>

<item android:drawable="@drawable/btn_nv_normal" android:state_enabled="true" android:state_window_focused="false"/>
<item android:drawable="@drawable/btn_nv_normal_disable" android:state_enabled="false" android:state_window_focused="false"/>
<item android:drawable="@drawable/btn_nv_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/btn_nv_selected" android:state_enabled="true" android:state_focused="true"/>
<item android:drawable="@drawable/btn_nv_normal" android:state_enabled="true"/>
<item android:drawable="@drawable/btn_nv_normal_disable_focused" android:state_focused="true"/>
<item android:drawable="@drawable/btn_nv_normal_disable"/>

允许在用户触摸,按下等时改变背景......

答案 1 :(得分:0)

你可以使用....

TableRow tr = findViewById(R.id.tablerow);
单击时

。在onClick()方法中使用以下代码...

tr.setBackgroundColor(Color.parseColor("#FF00FF"));

答案 2 :(得分:0)

最简单的方法是,你可以在listview中使用android:listSelector。