禁用 ListView 中的清除项目

发布于 2024-11-28 02:50:39 字数 2079 浏览 1 评论 0原文

我在一个白色背景的活动中创建了一个ListView。但是,如果我扫过这些项目,它们的背景就会变成黑色并覆盖文本。我怎样才能禁用它? 列表视图使用 ArrayAdapter 来填充它。

这是我的列表视图 xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="#F2F2F2"> 
<LinearLayout android:id="@+id/newEntry"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    <EditText android:id="@+id/txtNewItem" android:layout_width="wrap_content" android:layout_height="fill_parent" android:selectAllOnFocus="true" 
        android:layout_weight="1" android:maxLength="8" android:inputType="numberSigned|numberDecimal"/>
    <Button android:id="@+id/btnNewItem" android:text="@string/add_item" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="24sp" />
</LinearLayout>
<LinearLayout android:id="@+id/controlPanel"
    android:layout_alignParentBottom="true"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
    <Button android:id="@+id/btnClearList" android:layout_weight="1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/clear_list"/>
    <Button android:id="@+id/btnConfirmList" android:layout_weight="1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/confirm_btn"/>
</LinearLayout>
<ListView android:id="@+id/android:list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:layout_above="@id/controlPanel"
    android:layout_below="@id/newEntry"  />
<TextView android:id="@+id/android:empty"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/no_items"
    android:layout_below="@id/newEntry"
    android:textColor="#000000" />
</RelativeLayout>

I created a ListView in an Activity with a white background. However, if I sweep through the items, their background become black and cover the text. How can I disable it?
The listview uses ArrayAdapter to populate it.

Here's my listview xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="#F2F2F2"> 
<LinearLayout android:id="@+id/newEntry"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    <EditText android:id="@+id/txtNewItem" android:layout_width="wrap_content" android:layout_height="fill_parent" android:selectAllOnFocus="true" 
        android:layout_weight="1" android:maxLength="8" android:inputType="numberSigned|numberDecimal"/>
    <Button android:id="@+id/btnNewItem" android:text="@string/add_item" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="24sp" />
</LinearLayout>
<LinearLayout android:id="@+id/controlPanel"
    android:layout_alignParentBottom="true"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
    <Button android:id="@+id/btnClearList" android:layout_weight="1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/clear_list"/>
    <Button android:id="@+id/btnConfirmList" android:layout_weight="1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/confirm_btn"/>
</LinearLayout>
<ListView android:id="@+id/android:list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:layout_above="@id/controlPanel"
    android:layout_below="@id/newEntry"  />
<TextView android:id="@+id/android:empty"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/no_items"
    android:layout_below="@id/newEntry"
    android:textColor="#000000" />
</RelativeLayout>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

乖乖兔^ω^ 2024-12-05 02:50:39

您可以通过使用来做到这一点。在 xml 中的 ListView 中添加此行。

android:scrollingCache="false"

You can do that by using. Add this line in your ListView in the xml.

android:scrollingCache="false"
故事↓在人 2024-12-05 02:50:39

这可能是 ListView 背景绘制问题。查看这篇文章进行讨论和修复。

您也可能会发现背景颜色与活动的默认主题(浅色或深色)之间存在一些轻微的干扰。尝试将主题更改为轻型版本(Theme.Light)。

This is possibly a ListView background drawing issue. Check out this article for a discussion and a fix.

It's also possible that you are seeing some slight interference between your background color and the default theme (Light or Dark) for the activity. Try changing the theme to the light version (Theme.Light).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文