ScrollView嵌套listview,并计算listview的高度
来源:互联网 发布:张国荣但愿人长久知乎 编辑:程序博客网 时间:2024/05/29 15:44
1:首先是布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent"> <ScrollView android:id="@+id/sc" android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <ListView android:id="@+id/lv" android:layout_width="match_parent" android:layout_height="match_parent"></ListView> </LinearLayout> </ScrollView></LinearLayout>2:接下来就是代码了
public class MainActivity extends AppCompatActivity { private ListView lv; private ScrollView sc; private List<String> list=new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lv= (ListView) findViewById(R.id.lv); sc= (ScrollView) findViewById(R.id.sc); for (int i=0;i<20;i++){ list.add("条目:"+i); } ArrayAdapter adapter=new ArrayAdapter(this,android.R.layout.simple_list_item_1,list); lv.setAdapter(adapter); //调用方法 setListViewHeightBasedOnChildren(lv); } public void setListViewHeightBasedOnChildren(ListView listView) { ListAdapter listAdapter = lv.getAdapter(); if (listAdapter == null) { // pre-condition return; } int totalHeight = 0; // listAdapter.getCount()返回数据项的数目 for (int i = 0; i < listAdapter.getCount(); i++) { View listItem = listAdapter.getView(i, null, lv); // 计算子项View 的宽高 listItem.measure(0, 0); // 统计所有子项的总高度 totalHeight += listItem.getMeasuredHeight(); } ViewGroup.LayoutParams params = lv.getLayoutParams(); // listView.getDividerHeight()获取子项间分隔符占用的高度 // params.height最后得到整个ListView完整显示需要的高度 params.height = totalHeight + (lv.getDividerHeight() * (listAdapter.getCount() - 1)); lv.setLayoutParams(params); }}
0 0
- ScrollView嵌套listview,并计算listview的高度
- 浅谈ScrollView嵌套ListView及ListView嵌套的高度计算
- ScrollView嵌套ListView高度计算
- ScrollView与ListView并用时正确计算Listview的高度
- android scrollview嵌套listview计算高度的问题
- ScrollView嵌套ListVeiw时代码计算listView的高度
- ScrollView嵌套ListVeiw时代码计算listView的高度
- scrollview嵌套listview导致的高度计算不正确
- android ScrollView 里嵌套listview listview 重新计算高度
- ListView(ScrollView)嵌套ListView、GridView显示不全,内容大于一行计算的高度不正确的解决办法
- 计算并设置ListView的高度,防止嵌套ScrollView监听出现问题,(两种方法,一种自定义,一种测量)
- android scrollview 嵌套listview 或者listview嵌套listview 计算子view高度
- ScrollView嵌套listview高度适应
- ScrollView嵌套ListView高度问题
- ScrollView里面嵌套Listview调整listview的高度
- scrollview嵌套listview后设置listview的高度
- ScrollView嵌套ListView——求解listView的高度
- ListView嵌套ScrollView后,设置dividerHeight属性后高度计算
- kafka+storm+redis整合
- 关于分布式事务、两阶段提交协议、三阶提交协议
- linux运算统计案例
- 非XA式Spring分布式事务
- 最小生成树
- ScrollView嵌套listview,并计算listview的高度
- 多个并行线程运算
- The request to open "bundle id" failed.
- Learning Spark笔记2-RDD介绍
- 分布式事务处理模型
- 栈 逆波兰表达式
- 统计出现次数案例
- 基于消息队列和消息应用状态处理分布式事务
- 基于OKHttp实现对Https的支持