9

这个问题可能在这里被问过很多次,但没有得到有用的答案。我会把它放在这里并给出一个可能的答案。随意改进。

问题:如何在并排的主详细视图中设置类似详细视图样式的弹出窗口,如下图所示:

在此处输入图像描述

4

1 回答 1

16

在这个解决方案中,我使用了 9-patch 背景图像,为列表项定义了 2 种背景。因此,选中(选中)列表项具有不同的背景,如图所示:

在此处输入图像描述(项目清单)

在此处输入图像描述(选定项目)

在此处输入图像描述(项目清单)

列表项布局的父视图是一个扩展LinearLayout(可以是任何ViewGroup)并实现的类Checkable。因此,当ListView设置为选择模式时,它可以自动选中/取消选中该视图。selector然后,分配给此视图的背景会使用此检查状态:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_checked="true" android:drawable="@drawable/checked"/>
  <item android:drawable="@drawable/unchecked"/>
</selector>

这使得列表项视图的背景会自动更改,而无需在每次选择列表项时在代码中手动更改。

结果:

在此处输入图像描述

附加点:

  1. 滚动条可以移动到左侧。
  2. 使用与阴影颜色匹配的列表分隔线,或者可以在列表项和详细视图之间放置更多填充。
于 2012-12-25T16:52:43.850 回答