我正在尝试做类似iOS可编辑的UITableView。我有一个“添加项目”列表,如果用户单击“添加新项目”,他将被带到具有多个<Preference>
元素的PreferenceScreen,点击该应该从该屏幕消失并将其添加到“添加列表” (实际上是<PreferenceCategory>
),然后他们应该可以从这里删除它们或编辑它们的顺序。这与iOS可编辑列表类似。
这是我的XML:
<PreferenceScreen android:title="ALL APPS" android:key="app_list">
<!-- A <preference> for each app -->
</PreferenceScreen>
<PreferenceCategory android:title="ADDED APPS" android:key="my_apps_list">
</PreferenceCategory>
我已经尝试了无数次,我无法让它发挥作用。
我怎样才能完成它?
答案 0 :(得分:1)
我已经进行了一些实验,当你嵌套PreferenceScreens
时,它实际上很容易。
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<CheckBoxPreference android:title="Check it!" />
<PreferenceScreen android:title="To the other preferences!" android:summary="I really hope this works <3" >
<EditTextPreference android:title="Edit your name" android:summary="Edit your name :)" />
<CheckBoxPreference android:title="Accept answer" />
</PreferenceScreen>
</PreferenceScreen>
PS:请原谅我的硬编码字符串文字 - 它只是用于测试! :)
答案 1 :(得分:0)
这看起来与我过去提出的问题非常相似:
android - showing listView in PreferenceActivity
选择要显示的项目时,以某种方式存储它们(数据库,引用等),然后使用我找到的解决方案。
正如您所看到的,首选项活动中使用的视图实际上是一个listView,因此将listView放在listView中是很奇怪的。你需要的是一个特殊的技巧,这是我写的东西。
答案 2 :(得分:0)
请查看此问题的接受答案:
How to remove Android preferences from the screen
有时,如果存在类别,则必须
像那里的答案那样。这不是你的情况吗?“引用包含您要删除的偏好的类别,然后从该类别中删除该偏好”
希望这会有所帮助。