【问题标题】:Android: ListView rounded corner hidden by list itemAndroid:列表项隐藏的ListView圆角
【发布时间】:2010-11-10 16:50:28
【问题描述】:

我有这个 Listview 元素:

<ListView
android:id="@+id/category_list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/list_background" 
android:layout_marginTop="10sp" 
android:layout_marginLeft="10sp" 
android:layout_marginRight="10sp"
android:drawSelectorOnTop="false"

android:listSelector="@drawable/list_item_background"           
android:cacheColorHint="#FFFFFF"            

android:clipToPadding="true"
android:focusable="true"
android:focusableInTouchMode="true"     
android:clickable="true"    
android:longClickable="true"

android:footerDividersEnabled="true"
android:headerDividersEnabled="true"
android:dividerHeight="1px"

/>

list_background 在哪里:

<shape xmlns:android="http://schemas.android.com/apk/res/android">  
    <corners android:radius="10dp" /> 
    <solid android:color="#FFFFFF"/> 
</shape> 

列表视图会自动加载圆角,但是列表中的项目会隐藏圆角。

我做错了什么?

【问题讨论】:

  • 在上面的 ListView 中,ListView 的第一行没有保持圆形。你能指出背后的原因吗?

标签: android listview rounded-corners


【解决方案1】:

我已经找到了问题的解决方案。

我使用 android:cacheColorHint 设置了与 ListView 背景相同的颜色,这导致在列表滚动时和滚动后隐藏圆角。

因此,将其设置为“透明”(#0000) 解决了这个问题!

【讨论】:

  • 在上述解决方案中,ListView 的第一行没有保持圆形。你能指出背后的原因吗?
  • 实际上它对我有用。查看您的代码以检查是否有任何问题会很有用。
【解决方案2】:

也许您必须禁用列表中单个项目的背景,使其透明,以免覆盖列表

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-07
    • 1970-01-01
    • 1970-01-01
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-07
    相关资源
    最近更新 更多