`
zxs19861202
  • 浏览: 915224 次
  • 性别: Icon_minigender_1
  • 来自: 湖北—》上海
社区版块
存档分类
最新评论

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>   
分享到:
评论

相关推荐

    Android 实现圆角ListView实例

    本实例将详细介绍如何在Android中创建一个圆角ListView。 首先,我们要明白圆角效果通常是由背景Drawable实现的。在Android中,可以使用Shape Drawable来定义一个带有圆角的矩形。在`res/drawable`目录下创建一个...

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

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

    Android ListView边框圆角美化

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

    android listview圆角实现

    以下将详细讲解如何在Android中为ListView实现圆角。 首先,我们需要创建一个自定义的ListView,这通常涉及到继承AbsListView或ListView类。在这个自定义ListView中,我们将重写onDraw方法,以在绘制每个子视图(即...

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

    本教程将详细介绍如何在Android中实现圆角ListView并处理选中状态,基于提供的"Android列表之圆角ListView选中(二)"项目。 首先,我们需要理解ListView的基本用法。ListView通过Adapter来绑定数据,并通过...

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

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

    Android圆角ListView并完美解决和ScrollView共存问题

    在Android应用开发中,ListView是常用的视图组件,用于展示大量数据列表,而圆角ListView则是对默认样式的一种美化,可以提升用户界面的视觉效果。本文将深入探讨如何实现一个带有圆角的ListView,并解决其与...

    Android 圆角listview

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

    圆角Listview

    实现圆角ListView通常涉及以下几个关键知识点: 1. **自定义Adapter**:首先,我们需要创建一个自定义的Adapter,它继承自BaseAdapter或者ArrayAdapter。在这个自定义Adapter中,我们可以为每个ListView项定义个性...

    与圆角listView类似的效果

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

    android圆角的listview

    本文将深入探讨如何实现Android中的圆角ListView。 首先,我们需要理解ListView的工作原理。ListView通过Adapter来填充数据,Adapter是连接数据源和ListView视图的桥梁。当用户滚动ListView时,它会重用已创建但...

    基于Android实现ListView圆角效果

    本篇将详细讲解如何基于Android实现ListView的圆角效果,以及其实现原理。 首先,实现ListView圆角效果主要依赖于Android的Drawable资源,特别是Shape Drawable。Shape Drawable允许我们定义不同形状(如矩形、圆形...

    圆角listview

    在Android开发中,"圆角listview"是一个常见的需求,它通常用于提升用户界面的美观性和易用性。实现这样的效果需要对ListView的自定义视图有深入的理解,并且需要结合Android的图形绘制API,如Shape和Drawable。下面...

    Android圆角listview

    总结起来,实现"Android圆角listview"需要对ListView的工作原理、自定义Adapter、XML布局以及可能的性能优化有深入理解。通过结合自定义代码和第三方库,我们可以创造出独特且美观的界面效果。同时,随着Android ...

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

    本教程将详细介绍如何实现“Android列表之圆角ListView选中”的功能。 首先,我们要创建一个圆角ListView。这通常通过自定义ListView的背景来实现。你可以使用XML drawable文件定义一个形状(shape),并设置其角落...

    android 圆角listview

    在Android开发中,"圆角ListView"是一...总结起来,实现"Android圆角ListView"涉及自定义Adapter、设置圆角背景、加载图片以及监听用户交互。通过熟练掌握这些技巧,开发者可以创建出更加美观且交互丰富的Android应用。

    android 圆角listview(仿iphone)

    android 圆角listview(仿iphone).现在流行的就两张方式,一种是通过判断item位置更换背景图片,背景用.9.png图片;一种就是上传的这种通过drawable文件shape设置corners。

    自定义listview 圆角listviewitem 处理 选中背景处理

    本文将深入探讨如何实现自定义的圆角ListView项以及处理选中背景。 首先,我们需要了解ListView的工作原理。ListView通过Adapter来填充数据,并通过ViewHolder优化性能。Adapter负责将数据转化为View,然后ListView...

    Android例子源码IOS风格的圆角listview

    本例子源码“Android例子源码IOS风格的圆角listview”就是一个很好的示例,它将iOS风格的圆角ListView引入到Android系统中,为用户提供了一种新的视觉体验。下面我们将详细探讨这个知识点。 首先,我们来理解什么是...

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

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

Global site tag (gtag.js) - Google Analytics