我们知道在Android中ListView是一个比较常用的UI控件,我们在大部分开发中都需要用到它,因此Android为我们提供了ListView的多种实现方法,通过自定义显示布局让显示的内容更加美观,但是我们会发现这样一个问题,当我们操作ListView的时候,如果不使用手机上下按键的时候,直接用触摸拖动视图的方式,会发现ListView的背景一片黑色,而且所有被选中的文字都变成一片漆黑。
其实这个问题发生的原因在于ListView存在缓存颜色机制,因此我们可以通过设定缓存颜色为透明的方法来解决这个问题。ATAAW.COM提供两个解决方法供大家使用,如下所示:
A、通过布局属性来设定(ListView的属性中直接定义)
android:cacheColorHint=”#00000000″
B、在代码中直接设定
listView.setCacheColorHint(Color.TRANSPARENT);
这样就可以解决黑色出现的问题了。
原文作者:diordna
原文链接:http://www.ataaw.com/?p=565
转载编辑: 转载地址:http://disanji.net/2011/01/06/android-listview-background-black/
分享到:
相关推荐
### 去除拖动时默认的黑色背景 在用户拖动ListView的过程中,为了提高交互的视觉反馈,默认会有一个黑色的背景颜色显示出来。有时候这种效果并不符合应用的设计风格,需要被移除。 可以通过设置`android:...
VB6.0实现可拖放的ListView控件,同时也可自定义ListView各个行背景的改变,使用真彩色图标资源、支持鼠标拖放等,内含四个示例列表:普通列表、黑色背景列表、简单列表、使用真彩色图标资源、支持鼠标拖放等,内含...
cacheColorHint,设置为#00000000透明时,可以避免拖动时背景显示黑色的问题 divider,设置分割线,#00000000或@null分割线被隐藏 fadingEdge,设置为none,去除上边和下边的阴影 scrollbars,设置为none,隐藏滚动...
- 当ListView在拖动时背景图片消失,可以尝试设置`android:scrollingCache="false"`以避免滚动缓存导致的问题。 - 如果ListView的边缘有黑色阴影,可以使用`android:fadingEdge="none"`来禁用边缘淡入淡出效果。 ...
9. `float_background_color`: 指定拖动View的背景颜色,默认为黑色。此属性可以用来定制拖动时的视觉效果。 10. `drag_handle_id`: 必须设置的属性,用于指定List Item中作为拖动手柄的View的资源ID。只有点击该...
1.背景色: listView设置背景色android:background="@drawable/bg",拖动或者点击list空白位置的时候发现ListItem都变成黑色。 因为默认的ListItem背景是透明的,而ListView的背景是固定不变的,所以在滚动条滚动的...
无标题栏,无边框的窗体拖动 C#代码实例,为方便测试,弄成了黑色背景,没了关闭按钮,关闭时请按Alt+F4,另外你可以在黑色区域按住鼠标左键拖动本窗口到任意地方,拖动无边框窗体的完美例子。Visual c#实现无标题栏...
这篇由论坛整理的知识点主要涉及了三个主题:Android透明效果的实现、拖动效果的实现以及完美的ListView实现。下面将详细阐述这三个方面的内容。 首先,Android透明效果的实现主要依赖于控件的`android:background`...
在上述代码中,我们设置了滚动条的背景为浅灰色,前景(即滚动条上的滑块)为黑色。 如果想要使用自定义图片,可以考虑使用`Template`来完全控制滚动条的视觉表示。`Template`包含了一系列的`ControlTemplate`元素...
<item name="android:background">@color/black</item>//背景黑色 <item name="android:layout_width">wrap_content</item>//宽度为文本宽度 <item name="android:layout_height">wrap_content //高度为文本高度...