`
endual
  • 浏览: 3581929 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Android实现ListView圆角效果(转)

 
阅读更多

Android实现ListView圆角效果

本文演示如何Android中实现ListView圆角效果。

 

无论是网站,还是APP,人们都爱看一些新颖的视图效果。直角看多了,就想看看圆角,这几年刮起了一阵阵的圆角设计风:CSS新标准纳入圆角元素,特别是在iphone中几乎随处可见圆角设计,现在也开始出现很多圆角名片了。

 

现在就给大家实现一个圆角的ListView效果。 圆角的设计,我们并不追求到处都用,无处不用,android中有少数界面用直角确实容易显得锋利,和周边界面太过对比而显得不协调,比如大栏目列表,设置等等,而采用圆角实现,则会活泼,轻松的多,也融合的特别好。
  

先看下在IPhone中实现圆角效果的一个图片:

  在Iphone中这种效果处处可见,但在Android中就需要我们手动实现了。 

 

我们先看下示例运行效果图,如下所示:

 

 

 

 

实现原理: 

通过判断ListView上点击的项的位置,我们切换不同的选择器,当然这个切换的动作我们需要定义在重写ListView的onInterceptTouchEvent()方法中。

复制代码
    if(itemnum==0){

    if(itemnum==(getAdapter().getCount()-1)){
        //只有一项
        setSelector(R.drawable.app_list_corner_round);
    }else{
        //第一项                            
        setSelector(R.drawable.app_list_corner_round_top);
    }
}else if(itemnum==(getAdapter().getCount()-1))
    //最后一项
    setSelector(R.drawable.app_list_corner_round_bottom);
else{
    //中间一项                            
    setSelector(R.drawable.app_list_corner_shape);
}

复制代码

 

定义选择器  

如果只有一项,我们需要四个角都是圆角,app_list_corner_round.xml文件定义如下:

复制代码
 <?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient android:startColor="#BFEEFF" 
        android:endColor="#40B9FF" 
        android:angle="270"/>
    <corners android:topLeftRadius="6dip"
        android:topRightRadius="6dip"
        android:bottomLeftRadius="6dip"
        android:bottomRightRadius="6dip"/>
</shape>

复制代码

 

如果是顶部第一项,则上面两个角为圆角,app_list_corner_round_top.xml定义如下: 

复制代码
 <?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient android:startColor="#BFEEFF" 
        android:endColor="#40B9FF" 
        android:angle="270"/>
    <corners android:topLeftRadius="6dip"
        android:topRightRadius="6dip"/>
</shape>

复制代码

 

如果是底部最后一项,则下面两个角为圆角,app_list_corner_round_bottom.xml定义如下: 

复制代码
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient android:startColor="#BFEEFF" 
        android:endColor
="#40B9FF" 
        android:angle
="270"/>
    <corners android:bottomLeftRadius="6dip"
        android:bottomRightRadius
="6dip" />
</shape>   
复制代码


如果是中间项,则应该不需要圆角, app_list_corner_shape.xml定义如下: 

复制代码
<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient android:startColor="#BFEEFF" 
        android:endColor
="#40B9FF" 
        android:angle
="270"/>
</shape>   
复制代码


示例下载地址: 点击下载

 

最后,希望转载的朋友能够尊重作者的劳动成果,加上转载地址:http://www.cnblogs.com/hanyonglu/archive/2012/03/18/2404820.html  谢谢。

完毕。^_^ 

分享到:
评论

相关推荐

    基于Android实现ListView圆角效果

    首先,实现ListView圆角效果主要依赖于Android的Drawable资源,特别是Shape Drawable。Shape Drawable允许我们定义不同形状(如矩形、圆形等)并自定义其颜色、渐变、边框等属性。在这个案例中,我们将通过定义不同...

    Android ListView边框圆角美化

    本文将深入探讨如何在Android中实现ListView的边框圆角美化,以此来达到类似iPhone界面的视觉效果。 首先,我们需要理解ListView的基本结构。ListView是由多个View(通常是ListView项布局,即Item Layout)组成的,...

    android listview圆角实现

    总结一下,实现Android ListView的圆角效果主要涉及以下步骤: 1. 创建自定义的ListView,重写`onDraw`方法来绘制带有圆角的子视图。 2. 在适配器的`getView`方法中设置列表项的背景,以配合圆角效果。 3. 在布局...

    Android实现iphone圆角ListView和点击的效果

    在Android开发中,为了使应用界面更接近iOS的风格或者增加独特的用户体验,有时我们需要实现类似iPhone的圆角ListView以及点击效果。本篇文章将详细讲解如何在Android中复现这一功能。 首先,我们要创建一个带有...

    Android 实现圆角ListView实例

    要实现一个具有圆角效果的ListView,我们需要结合自定义View、Drawable以及Adapter等技术来完成。本实例将详细介绍如何在Android中创建一个圆角ListView。 首先,我们要明白圆角效果通常是由背景Drawable实现的。在...

    android listview 圆角的实现方案,模仿Iphone的UITableView

    本篇文章将详细探讨如何实现一个模仿iPhone中UITableView风格的Android ListView,特别是如何赋予ListView圆角效果。 首先,我们需要了解ListView的基本结构。ListView是Android中的一个视图容器,用于显示一列可...

    listview圆角示例源码

    在Android中,实现ListView圆角通常涉及以下几个关键知识点: 1. **自定义ListView项布局**:首先,我们需要为ListView创建一个自定义的布局文件。在这个布局中,我们可以设置背景为一个带有圆角的Drawable资源。...

    ListView圆角分块显示

    总的来说,实现ListView圆角分块显示涉及到UI设计、自定义布局、数据适配等多个方面,需要开发者具备良好的Android基础知识和实践经验。在实际项目中,可以根据需求和性能要求选择合适的方法来实现这一功能。

    ListView的圆角效果

    在Android开发中,ListView是...这个压缩包文件"ListView的圆角实现"可能包含了实现上述步骤的代码示例,供开发者参考和学习。通过理解这些知识点,你可以根据自己的项目需求,灵活地实现不同风格的圆角ListView效果。

    listview圆角列表demo

    而“listview圆角列表demo”则是针对ListView进行的一种定制化设计,使得ListView的每一项(item)显示为具有圆角的矩形,以提升界面的美观度和用户体验。下面将详细解释如何实现ListView的圆角效果。 1. **圆角...

    与圆角listView类似的效果

    要实现“圆角ListView”的效果,我们可以使用自定义的ListView适配器(Adapter)。在这个例子中,开发者选择使用TextView代替ListView,因为对于简单的展示需求,TextView可能更简单、更高效。TextView作为Android的...

    android listView 圆角

    要实现ListView的圆角效果,我们需要理解Android的布局系统、自定义ViewGroup以及如何为ListView的每个条目设置背景。以下是实现这一目标的具体步骤和相关知识点。 1. **自定义Adapter** - Android中的ListView...

    Android 圆角listview

    总的来说,实现“Android圆角listview”和“回弹效果”需要结合布局设计、自定义视图绘制、滚动监听和动画处理等技术。开发者可以根据项目的具体需求,选择合适的方法来实现这些功能,提升用户体验。

    listview圆角实现

    以上就是实现ListView圆角的基本步骤。当然,实际应用中可能还需要考虑更多细节,如阴影效果、不同状态下的背景色等,可以根据需求进行扩展。同时,如果你希望在ListView滑动时保持头部和底部的圆角,可能需要使用到...

    Android UI设计:为ListView添加圆角边框效果.rar

    Android为ListView添加圆角边框效果,安卓UI设计的例子,默认情况下ListView的外框是直角的,也就是大家习惯的样式,但为了美化更突出,或者与你的应用风格更吻合,有时候可能修饰成圆角边框,本例子就是实现了这一...

    ListView圆角样式

    本篇文章将深入探讨如何在Android中实现ListView的圆角样式,打破传统的视觉效果。 首先,我们要明白,自定义ListView的Item圆角样式主要涉及到以下几个方面: 1. **布局设计**:在XML布局文件中,我们可以使用`...

    Android列表之圆角ListView选中(一)

    以上就是实现“Android列表之圆角ListView选中”的基本步骤。CornerDemo1这个项目应该包含了实现这个功能的示例代码,你可以通过阅读和运行它来深入理解这些概念。在实际开发中,可以根据具体需求调整样式和交互,让...

Global site tag (gtag.js) - Google Analytics