【问题标题】:How to put padding/spacing in-between list view item and scroll bar [Android]如何在列表视图项和滚动条之间放置填充/间距 [Android]
【发布时间】:2012-02-06 12:39:10
【问题描述】:

我有一个 ListView,我想在列表视图项和滚动条之间放置间距/边距/填充。

:ListView:
+------------------------+------------+----------+
|List Item 1             |            |          |
+------------------------+            |          |
|List Item 2             |----Space---|  Scroll  |
+------------------------+            |    Bar   |
|List Item 3             |            |          |
+------------------------+------------+----------+

【问题讨论】:

  • 您是否尝试将填充添加到列表项布局中?
  • 是的,我已经尝试过了,但滚动缩略图仍然出现在列表项旁边,中间没有填充。
  • 您确实将填充放在列表项的布局中吗?也就是说,不是列表。

标签: android


【解决方案1】:

我找到了解决办法:
将滚动条样式设置为outsideInset,然后在右侧添加滚动条填充。

android:scrollbarStyle="outsideInset"
android:paddingRight="10dp"

就是这样!

【讨论】:

  • 在右侧添加内边距也会改变所有子元素的触摸目标宽度。我不在乎你的设计,你可以用这个。
  • 不错。如果你想让滚动条像在 iOS 上一样工作,你应该使用outsideOverlay
  • 哇!我找了几个小时!谢谢你!我用这个完美地解决了我的问题!
【解决方案2】:

我希望我的 TableLayout 也一样。填充帮助了我。对你来说应该是:

android:paddingRight="10dip"

是的。如果你在 ScrollView 中添加 ListView,你的 listView 会随着 ScrollView 滚动。

试试这个。希望它会给你你想要的结果。

【讨论】:

  • padding 不会在滚动拇指和列表项之间设置填充。它对我不起作用。 :(
  • 尝试在滚动视图中添加 paddingLeft。填充在两个组件之间留下了一些空间。为了更恰当地查看结果,最初给出更高的“倾角”值。还要设置 ListView 的背景颜色,所以当添加填充时,您会看到列表和滚动视图之间的额外空间。它与我在水平和垂直滚动视图中的 TableLayout 一起工作。试试看。
【解决方案3】:

您必须使用Fragments

1º 您加载内容视图,具有 3 个垂直布局

2º 然后,在不同的 xml 中使用您想要的 3 个片段,并在每个片段中加载内容。

3º 设置布局之间的边距。

你有一个很好的例子Here

【讨论】:

  • 感谢您的回复,但是有没有简单的解决方案可以只使用xml代码来实现。
  • 我认为不可能,因为你必须使用setcontentView,并且使用xml结构,要组合它们,你必须使用片段。它是一样的,只是不同的部分在不同的xmls中。