android中scrollview与listview共存
来源:互联网 发布:flashplayer mac 编辑:程序博客网 时间:2024/06/05 02:56
ScrollView与ListView共存会存在滚动的问题,并且ListView只显示一个半Item。 当ListView的高度设定一定的值时,ListView同样地会显示对应的高度的Item。 因此我们可以计算出这个ListView的总高度,再将它设置到ListView中,那么之前的滚动,高度问题也就不存在了。
1. [代码]获取并设置ListView高度的方法
public
void
setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter listAdapter = listView.getAdapter();
if
(listAdapter ==
null
) {
return
;
}
int
totalHeight =
0
;
for
(
int
i =
0
; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i,
null
, listView);
listItem.measure(
0
,
0
);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() -
1
));
((MarginLayoutParams)params).setMargins(
10
,
10
,
10
,
10
);
listView.setLayoutParams(params);
}
[代码]重写ListView解决item高度不一致的问题
public
class
MyListView
extends
ListView {
public
MyListView(Context context) {
super
(context);
}
public
MyListView(Context context, AttributeSet attrs) {
super
(context, attrs);
}
public
MyListView(Context context, AttributeSet attrs,
int
defStyle) {
super
(context, attrs, defStyle);
}
@Override
protected
void
onMeasure(
int
widthMeasureSpec,
int
heightMeasureSpec) {
int
expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >>
2
,
MeasureSpec.AT_MOST);
super
.onMeasure(widthMeasureSpec, expandSpec);
}
}
0 0
- android中scrollview与listview共存
- android中scrollview与listview共存
- android中scrollview与listview共存
- Android:scrollview与listview共存
- listView 与scrollView 共存
- ScrollView与ListView,ExpandableListView共存
- ScrollView与ListView共存代码
- android listview和scrollview共存
- Android ScrollView与ListView,GridView共存冲突解决方案
- ScrollView与ListView,GridView共存冲突解决办法 Android
- Android ScrollView与ListView,GridView共存冲突解决方案
- Android ScrollView与ListView,GridView共存冲突解决方案
- Android ScrollView与ListView,GridView共存冲突解决方案
- Android ScrollView与ListView,GridView共存冲突解决方案
- ScrollView与ListView,GridView共存冲突解决办法 Android
- Android ScrollView与ListView,GridView共存冲突解决方案
- android系列:ScrollView与ListView,GridView共存冲突解决方案
- Android ScrollView与ListView,GridView共存冲突解决方案
- 进行推荐一
- 2015-4-25华为成研所实习生招聘面试回顾
- iOS开发的一些技巧整理
- Java对象的序列化方式克隆
- 新的城市,新的公司,新的梦想
- android中scrollview与listview共存
- POJ 2421Constructing Roads Kruskal求解
- 三方库地址
- ios tableView那些事(一)创建一个简单的tableView
- ios tableView那些事(二)给tableView添加数据
- JAVA菜鸟入门(8) Java的Final关键字
- ios tableView那些事(三)给tableView添加些图片
- ios tableView那些事(四)tableView添加标题,头尾和改变cell的宽度
- (ios7)第一个ios程序helloworld