gpt4 book ai didi

java - 使用 SimpleCursorAdapter 保留 highlite 列表项

转载 作者:IT王子 更新时间:2023-10-29 06:25:36 26 4
gpt4 key购买 nike

我正在使用来自 Google (Android 3) 的新 fragment 实现一个 Split View。

当用户从列表中选择某项时,它会在详细信息区域显示值并保持列表项突出显示

当我使用数组适配器时,它会在添加以下内容后保持列表项的焦点:

getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);
getListView().setItemChecked(postition, true);

但是当我更改为使用 SimpleCursorAdapter 和自定义行 xml 文件来使用数据库时,它会在我按下时突出显示。

“我想在 ListView 中保留突出显示的项目”

最佳答案

您需要为列表行设置激活样式。问题是这仅适用于 API 级别 11 及更高级别。

一种方法是使用两种不同的样式。在 res/values-v11/styles.xml 中,您可以:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="activated" parent="android:Theme.Holo">
<item name="android:background">?android:attr/activatedBackgroundIndicator</item>
</style>
</resources>

res/values/styles.xml 你会:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="activated">
</style>
</resources>

然后您的行布局将使用该 activated 样式,例如:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="center_vertical"
android:layout_marginLeft="4dip"
android:minHeight="?android:attr/listPreferredItemHeight"
style="@style/activated"
/>

结合您现有的 CHOICE_MODE_SINGLE 逻辑,这将使您的行在被点击后保持激活状态。

关于java - 使用 SimpleCursorAdapter 保留 highlite 列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7779743/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com