找了相关的资料终于写完了: 
http://blog.csdn.net/jamin0107/article/details/6973845 
和 
http://emmet1988.iteye.com/blog/1097443

原来在scrollview中套listview需要将listview的高度固定 
,这里就需要将listview的子类高度计算

同时还要注意子ListView的每个Item必须是LinearLayout

“引用连接中的话”------------------------------------------------------ 
只要在设置ListView的Adapter后调用此静态方法即可让ListView正确的显示在其父ListView的ListItem中。但是要注意的是,子ListView的每个Item必须是LinearLayout,不能是其他的,因为其他的Layout(如RelativeLayout)没有重写onMeasure(),所以会在onMeasure()时抛出异常。 
  在ScrollView中嵌套ListView(或者ScrollView)的另外一个问题就是,子ScrollView中无法滑动的(如果它没有显示完全的话),因为滑动事件会被父ScrollView吃掉,如果想要让子ScrollView也可以滑动,只能强行截取滑动事件,有牛人在论坛中发过代码说可以。虽然我没有亲自试过,但估计是可行的。 
-------------------------------------------------------------

  1. 在listview.setAdapter()之后调用Utility.setListViewHeightBasedOnChilren(listview)就Okay 了。
  2. public class Utility {
  3. public static void setListViewHeightBasedOnChildren(ListView listView) {
  4. //获取ListView对应的Adapter
  5. ListAdapter listAdapter = listView.getAdapter();
  6. if (listAdapter == null) {
  7. // pre-condition
  8. return;
  9. }
  10. ;
  11. , len = listAdapter.getCount(); i < len; i++) { //listAdapter.getCount()返回数据项的数目
  12. View listItem = listAdapter.getView(i, null, listView);
  13. ); //计算子项View 的宽高
  14. totalHeight += listItem.getMeasuredHeight(); //统计所有子项的总高度
  15. }
  16. ViewGroup.LayoutParams params = listView.getLayoutParams();
  17. ));
  18. //listView.getDividerHeight()获取子项间分隔符占用的高度
  19. //params.height最后得到整个ListView完整显示需要的高度
  20. listView.setLayoutParams(params);
  21. }
  22. }
  1. Listview其他属性
  2. .去滑动到顶点和底边时的黑色阴影
  3. [html] view plaincopy
  4. android:fadingEdge="none"
  5. .去拖动时默认黑色底色
  6. [html] view plaincopy
  7. .去选中时的黄色底色
  8. [html] view plaincopy
  9. android:listSelector="#00000000"
  1. <ListView
  2. android:id="@+id/roundlistview01" android:layout_width="fill_parent"
  3. android:layout_height="wrap_content" android:background="@drawable/shape"
  4. android:cacheColorHint="#00000000" android:drawSelectorOnTop="false"
  5. android:fadingEdge="none" android:listSelector="#00000000"
  6. android:layout_marginLeft="10dip" android:layout_marginRight="10dip">
  7. </ListView>

圆角android:background="@drawable/shape": 
shape.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">
  3. <!-- 实心  透明色
  4. <solid android:color="#FFFFFF"/>
  5. -->
  6. <gradient android:startColor="#F0F0F0"
  7. android:endColor="#F0F0F0"
  8. android:angle="90" />
  9. <stroke
  10. android:width="2dp"
  11. android:color="#6C6C6C"  />
  12. <corners
  13. android:radius="10dip" />
  14. <padding
  15. android:left="0dp"
  16. android:top="0dp"
  17. android:right="0dp"
  18. android:bottom="0dp" />
  19. </shape>

源代码:下载地址1:http://dl.iteye.com/topics/download/8bb55721-9bda-3271-ac3d-576a78e22624

(源码)自己写的ScrollView里套漂亮的圆角listview(算是漂亮吧。。。)的更多相关文章

  1. (https专业版)2018年1月5日高仿互站仿友价T5虚拟交易+实物交易商城-站长交易源码送手机版程序10套模版+首页微信登陆+头部下拉导航

    (https专业版)2018年1月5日高仿互站仿友价T5虚拟交易+实物交易商城-站长交易源码送手机版程序10套模版+首页微信登陆+头部下拉导航 首页支持微信登陆,只有第8套模板支持(endv模板),后 ...

  2. 【commons-pool2源码】写前思考

    写作的初衷 工作4年多, 一直没有系统的阅读过优秀的开源代码, 所以从今年开始做一些尝试, 阅读源码并且试着将自己的理解以文章的形式输出, 从而达到以下目的: 通过阅读源码提升自身的技术水准, 通过写 ...

  3. 史上最完整promise源码手写实现

    史上最完整的promise源码实现,哈哈,之所以用这个标题,是因为开始用的标题<手写promise源码>不被收录 promise自我介绍 promise : "君子一诺千金,承诺 ...

  4. 开源电影项目源码案例重磅分析,一套代码发布小程序、APP平台多个平台

    uni-app-Video GitHub地址:https://github.com/Tzlibai/uni-app-video 一个优秀的uni-app案例,旨在帮助大家更快的上手uni-app,共同 ...

  5. 看源码和写demo是一种比较容易提升的方式

    github就是要这么用才行.看别人的源码,就能了解到很多规范,而写demo,就是自己写出自己的代码.莫欺少年穷

  6. nginx源码分析:打开监听套接字的流程

    问题源于在分析nginx的源码时,找了半天没有找到nginx是怎么把监听套接字读事件添加到事件循环中的,后经过仔细的分析,终于搞明白,于是记录一下. 在上一篇module机制中介绍了nginx添加mo ...

  7. spring源码分析-core.io包里面的类

    前些日子看<深入理解javaweb开发>时,看到第一章java的io流,发觉自己对io流真的不是很熟悉.然后看了下JDK1.7中io包的一点点代码,又看了org.springframewo ...

  8. 逐行剖析Vue源码(一)——写在最前面

    1. 前言 博主作为一名前端开发,日常开发的技术栈是Vue,并且用Vue开发也有一年多了,对其用法也较为熟练了,但是对各种用法和各种api使用都是只知其然而不知其所以然,因此,有时候在排查bug的时候 ...

  9. 快餐店运行模拟C++程序源码代写

    某快餐店供应若干种快餐和饮料(5种以上),早晨6:00开始营业,晚上11:00打烊.前一天已经安排了若干工人上班,快餐店的用餐位是固定的,每种食物的成本和销售价格是确定的,每种食物的总量是确定的,储存 ...

随机推荐

  1. Django1.8教程——从零开始搭建一个完整django博客(二)

    在上一节中,我们已经创建了一个Django模型Post,并使Post模型与数据库同步.这一节中,我们将介绍Django管理站点,通过Django管理站点来管理我们创建的Post模型实例. 为你的模型创 ...

  2. Spring学习(三)——Spring中的依赖注入的方式

    [前面的话] Spring对我太重要了,做个关于web相关的项目都要使用Spring,每次去看Spring相关的知识,总是感觉一知半解,没有很好的系统去学习一下,现在抽点时间学习一下Spring.不知 ...

  3. 第三十五课:Ajax详解

    一个完整的Ajax请求: var xhr = new (self.XMLHttpRequest || ActiveXObject)("Microsoft.XMLHTTP");   ...

  4. 软工实践个人练习-使用github进行代码管理

    1.掌握使用Git进行代码版本,使用github进行代码托管. 2.创建小组Organization,并邀请组员进来. 3.将代码库https://github.com/sefzu2015/AutoC ...

  5. Java-ArrayList和Vector的区别

    这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素, ...

  6. Java.util.ArrayList详解

    java.util.ArrayList就是传说中的动态数组. 继承了关系,有此可看出ArrayList与list的collection的关系 public class ArrayList<E&g ...

  7. structs环境搭建

    (1)<s:fielderror />放在JSP中,如果没在web.xml中配置filter相关内容,会有The Struts dispatcher cannot be found.从而显 ...

  8. jquery插件库

    jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多javascript高手加入其team. jQuery是继prototype之后又一个优秀的Javascrīpt框架.其经典 ...

  9. 【Gym 100712A】Who Is The Winner?

    题 题意 解题数目越多越排前,解题数目相同罚时越少越排前,求排第一的队伍名字. 分析 用结构体排序. 代码 #include<cstdio> #include<algorithm&g ...

  10. IM通信协议逆向分析、Wireshark自定义数据包格式解析插件编程学习

    相关学习资料 http://hi.baidu.com/hucyuansheng/item/bf2bfddefd1ee70ad68ed04d http://en.wikipedia.org/wiki/I ...