更改ListView的背景颜色会禁用高亮颜色

Tom*_*ala 3 android onclick listactivity

我有一个ListActivity中显示的搜索结果列表.当我更改ListActivity项的背景颜色时,通过更改第一个LinearLayout(父级)的背景颜色,OnClick突出显示停止工作.为什么这样,当我更改项目的背景颜色时,如何使此突出显示仍然有效?另外,是否可以更改此高光的颜色?谢谢.

我的XML是这样的:

<LinearLayout>
<LinearLayout>
 <ImageView>
 <LinearLayout>
  <TextView>
  </TextView>
  <TextView>
  </TextView>
  <TextView>
  </TextView>
 </LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我的活动是这样的:

public class ResultsPage extends ListActivity {
Run Code Online (Sandbox Code Playgroud)

gma*_*i21 5

正如James所说,如果您在代码中更改背景颜色,当用户在执行时选择ListView中的项目时,它不会突出显示该项目.

您可以使用ListView定义中的属性drawSelectorOnTop ="true"来修复这些行为.例如

<ListView
    android:id="@android:id/list"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:drawSelectorOnTop="true"
/>
Run Code Online (Sandbox Code Playgroud)