Android ListView 和 ScrollView 冲突问题
来源:互联网 发布:淘宝上怎么手机发货 编辑:程序博客网 时间:2024/05/16 02:21
最近做一款APP,其中有一个类似微博的评论功能的界面,先是列出微博的正文内容和图片等,然后下边是评论。一开始就想着用一个ScrollView把主要内容和评论区的ListView包起来,然后添加各个控件的内容即可(对,感觉上有点像这个CSDN博客的编辑界面嘛),但是写出来之后发现ListView只显示出了一个条目的高度,并且不能滑动,网上搜了一下发现原因是ScrollView和ListView都是可滑动的,把它们放在一块会有冲突,最后还是ScrollView获得了焦点,ListView不能滑动。网上的解决方法最多的是在加载ListView时用getMeasure计算每个条目和分割线的高度,然后相加,把结果设置为ListView控件的高度,不过貌似是只适用于ListView每个条目高度都一样的情况(没有试过,很奇怪为什么会这样)。要么就是自定义一个继承自ListView的控件,也是事先设置好ListView的高度,但这样总归比较麻烦,而且准确度不如由系统自己构造好。
懒癌发作实在不想自己去做这些事情,于是便想试一下比较投机的方法,就是在ListView的Adapter的getView方法中根据position构造不同的界面,即如果position是0,则用原来主要信息(微博正文,图片)的xml文件取inflate convertView,否则就用评论条目的xml去inflate,经试验果然可行。之后不死心想看下有没有更好的实现方法,去overflow上找了一下,发现有人推荐的方法和我的差不多,所以认为这种方法是比较好的,不需要做额外的工作,只需要把inflate的工作由主Activity放在Adapter里就可以了。
getView方法
@Overridepublic View getView(int position, View convertView, ViewGroup parent){/*主信息界面*/if(0 == position){MainHolder holder = null;convertView = inflater.inflate(R.layout.info, parent, false);holder = new MainHolder();convertView.setTag(holder); ······ ······}/*评论界面*/else{ItemHolder holder = null;convertView = inflater.inflate(R.layout.item, parent, false);holder = new ItemHolder();convertView.setTag(holder);············return convertView;}}
- Android ListView 和 ScrollView 冲突问题
- Android ScrollView和ListView滑动冲突问题
- Android ScrollView、ListView冲突问题
- listview 和scrollview冲突问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- android 里listview和ScrollView的冲突问题
- Android的ScrollView和ListView滑动冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- Android 解决ListView 和 ScrollView 共存冲突的问题
- 如何在未越狱的iOS 设备上安装 ipa
- USACO Mother's Milk(bfs)
- 杭电ACM1218——Blurred Vision
- [amanhardikar] - Security Tests v1.0
- Android webview js 调用java方法报错"Uncaught TypeError: Object [object Object] has no method xx
- Android ListView 和 ScrollView 冲突问题
- uva 10397 Connect the Campus 把学校连起来
- 无限循环滚动大图(UICollectionView)
- WPF与JS 函数、回调函数调用
- hadoop常见问题
- Java通过反射机制动态设置对象属性值
- Android MaterialDesign相关全
- Java XML解析之Digester的使用
- swift2 方法