首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在ListView的每个单元格中设置阴影?

如何在ListView的每个单元格中设置阴影?
EN

Stack Overflow用户
提问于 2013-05-01 10:45:52
回答 4查看 25.2K关注 0票数 19

我为Android ListView定制了一个单元格。此自定义单元格是一个相对布局,其中包含一些视图。每个单元格之间有一个空格,所以我想在单元格的底部添加一个阴影。

我在谷歌上找了很久,但什么也没找到?我想要实现类似的东西:

谢谢!

EN

回答 4

Stack Overflow用户

发布于 2013-05-01 11:58:58

最简单的方法绝对是将阴影构建成一个9补丁。下面就是一个这样的例子:

这比它需要的要大得多,作为一个9补丁,但我想把它做得更大一些。

票数 2
EN

Stack Overflow用户

发布于 2013-06-25 22:28:55

我将此图层列表作为您列表项布局中的背景,所选颜色已禁用...

代码语言:javascript
复制
    <?xml version="1.0" encoding="utf-8"?>
   <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
     <item >
        <shape 
          android:shape="rectangle">
              <solid android:color="@android:color/darker_gray" />
              <corners android:radius="5dp"/>
        </shape>
     </item>
     <item android:right="1dp" android:left="1dp" android:bottom="2dp">
        <shape 
          android:shape="rectangle">
              <solid android:color="@android:color/white"/>
              <corners android:radius="5dp"/>
        </shape>
     </item>
   </layer-list>
票数 2
EN

Stack Overflow用户

发布于 2013-05-01 12:19:29

我还没有测试你的确切场景,但这就是你如何在列表视图中添加一个透明的分隔符:

代码语言:javascript
复制
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">

  <ListView 
    android:id="@+id/android:list"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:divider="@android:color/transparent"
    android:dividerHeight="4dip"/>

</LinearLayout>

如果你想以编程方式添加阴影线,这就是你需要的。

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>  
<shape xmlns:android="http://schemas.android.com/apk/res/android"  
    android:shape="rectangle">  
    <solid android:color="@android:color/transparent" />  
    <stroke   
        android:layout_marginLeft="10dip"
        android:layout_marginRight="10dip"
        android:width="match_content"   
        android:color="@color/black"  />  
    <size android:height="1dp" />
</shape>

笔划的颜色可能不会显示为黑色,因为它渲染在alpha层的顶部。另外,这当前绘制矩形的四条边,而不仅仅是底边。(我必须在这两个问题上做一些进一步的研究)。

如果您需要帮助来弄清楚如何将它们组合在一起,请参阅此tutorial

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16312044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档