ScrollView 与ListView 滑动冲突完美解决
一、介绍ListView高度的设置方法
二、根据实际需求解决冲突问题
一、介绍ListView高度的设置方法
在ScrollView中使用ListView,ListView的高度会不正常。
方式一:在XML中写死
android:layout_width="match_parent"
android:layout_height="120dp"
方式二:代码中设置固定高度(如果在运行过程中才能决定ListView高度)
public void setHeight(int height){
LayoutParams params = this.listview.getLayoutParams();
params.width = LayoutParams.FILL_PARENT;
params.height = height;
listview.setLayoutParams(layoutParams);
}
方式三:代码中动态设置高度(让ListView高度最大 显示完全所有数据)
public void setHeight(){
int height = 0;
int count = adapter.getCount();
for(int i=0;i<count;i++){
View temp = adapter.getView(i,null,listview);
temp.measure(0,0);
height += temp.getMeasuredHeight();
}
LayoutParams params = this.listview.getLayoutParams();
params.width = LayoutParams.FILL_PARENT;
params.height = height;
listview.setLayoutParams(layoutParams);
}
二、根据实际需求解决冲突问题
前提1:ListView 显示全部内容(假如4条数据 我显示满4条)
上述方式三让ListView高度最大,显示完全数据,滑动时就只会响应ScrollView滑动事件
此时ListView不能滑动,也没必要滑动,因为已经显示完全数据。
前提1:ListView 不想显示全部内容(假如100条数据 我只显示10条 滑动查看其余)
使用上述方式一或二,ListView没有显示完全数据
但是想焦点在ListView时滑动ListView,焦点在ScrollView时滑动ScrollView
给ListView加上监听OnTouchListener
listView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
scrollView.requestDisallowInterceptTouchEvent(true);
return false;
}
}
);
ScrollView 与ListView 滑动冲突完美解决的更多相关文章
- ScrollView和ListView滑动冲突问题
1.在ScrollView里面嵌套ListView时,ListView的滑动事件无法响应. 先看下事件分发的过程: 由父View层的 onInterceptTouchEvent 到中间层的on ...
- Android ScrollView和ListView滑动冲突解决记录
private int mLastX; private int mLastY; public View.OnTouchListener onTouchListener = new View.OnTou ...
- scrollview 和 listview滑动冲突解决
http://blog.csdn.net/wanghao200906/article/details/51084975 http://www.cnblogs.com/shitianzeng/artic ...
- (转)ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
ViewPager,ScrollView 嵌套ViewPager滑动冲突解决 本篇主要讲解一下几个问题 粗略地介绍一下View的事件分发机制 解决事件滑动冲突的思路及方法 ScrollView 里面嵌 ...
- 关于Android滑动冲突的解决方法(二)
之前的一遍学习笔记主要就Android滑动冲突中,在不同方向的滑动所造成冲突进行了了解,这样的冲突非常easy理解,当然也非常easy解决.今天,就同方向的滑动所造成的冲突进行一下了解,这里就先以垂直 ...
- PullToRefreshListView中嵌套ViewPager滑动冲突的解决
PullToRefreshListView中嵌套ViewPager滑动冲突的解决 最近恰好遇到PullToRefreshListView中需要嵌套ViewPager的情况,ViewPager 作为头部 ...
- 关于ScrollView和listview的冲突关于的滑动和宽度
listview和ScrollView嵌套有两个冲突,关于listview显示不全的问题和listview和scrollview的滑动冲突 自定义listview package com.exmple ...
- 解决ScrollView与ListView事件冲突
1,在最近做项目的时候使用ScrollView嵌套ListView的时候发现ListView的滑动效果失效,简单的网上搜索了一下,也就有了下面的解决方法,在ListView中设置事件的监听listvi ...
- ScrollView与ListView的冲突
众所周知ListView与ScrollView都具有滚动能力,对于这样的View控件,当ScrollView与ListView相互嵌套会成为一种问题: 问题一:ScrollView与ListView嵌 ...
随机推荐
- RIA(富客户端)发展态势
在过去的两到三年中,Web开发人员一直是想构建一种比传统HTML更丰富的客户端:这是一个用户接口,它比用HTML能实现的接口更加健壮.反应更加灵敏和更具有令人感兴趣的可视化特性.RIA技术的出现允许我 ...
- API基础开发学习网址
http://www.cnblogs.com/shanyou/category/307401.html http://www.cnblogs.com/beginor/archive/2012/03/1 ...
- MFC实现数独(1)
雨天纷纷扰扰,数月里每日有雨,这个夏天不热,写这个数独的动机很简单:实践是最好的成长方式,想要获得自信,必有这么一遭,我躲不过.至于决定记录成博客,则是因为很久没有写文章,经常感觉脑海里很空白,屡次开 ...
- request,response,session
1.request.getParameter("key")接受的是来自客户登陆端的数据,接受的是post或get方式传送的value. 2.请求的默认字符集是ISO-8859-1, ...
- UVA 1600
Description A robot has to patrol around a rectangular area which is in a form of mxn grid (m rows a ...
- 如何用boost::serialization去序列化派生模板类(续)
在 如何用boost::serialization去序列化派生模板类这篇文章中,介绍了序列化派生类模板类, 在写測试用例时一直出现编译错误,调了非常久也没跳出来,今天偶然试了一下...竟然调了出来. ...
- RT-Thread学习笔记(1)
前几天我在看uCOS-II的东西,看来看去一直没什么头绪.还有一点是,我很介意它现在是个商业软件,在官网下载东西,半天下完结果只有个lib,没有源代码.只能去其他地方下载老版本. 我还很介意不是在官方 ...
- Cocos2D Study - Preparation & Installation
---------------------------------------------------------------------------------------------------- ...
- 异步消息总线hornetq学习-03客户端连接hornet进行jms消息的收发-非jndi方式连接
在上节中介绍了通过jndi方式连接到hornetq服务器上,有时候由于某些原因,我们不希望通过jndi方式连接,hornetq也支持这种方式进行 以第2章节的例子为模板,我们编写了另一个获取Conne ...
- C++ BackColor_Dialog
相关主题 1. 用纯色 设置对话对话框的背景色 2. 用位图 设置对话对话框的背景色 3. 使用Picture Ctrl来设置背景图片 对话框背景色 其他相关 CColorDi ...