首页 > 代码库 > 63ScrollView嵌套ListView带来的问题以及解决方式
63ScrollView嵌套ListView带来的问题以及解决方式
项目中用到了ScrollView结合GridView,出现了很多问题,这里先拿ListView开刷。想要实现的效果如下:
但是实现的效果却如下:
崩溃了。布局是这样的:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <ListView android:id="@+id/list_view" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </ScrollView>
加入给ScrollView添加下面的属性:
android:fillViewport="true"
运行界面是出来,但是界面怎么都拖不动,解决的办法就是自定义ListView:
package com.example.uilistviewtest; import android.content.Context; import android.util.AttributeSet; import android.widget.ListView; public class MyListView extends ListView{ public MyListView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } public MyListView(Context context, AttributeSet attrs) { super(context, attrs); } public MyListView(Context context) { super(context); } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST); super.onMeasure(widthMeasureSpec, expandSpec); } }新的布局:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <com.example.uilistviewtest.MyListView android:id="@+id/list_view" android:layout_width="match_parent" android:layout_height="wrap_content" > </com.example.uilistviewtest.MyListView> </ScrollView>
再次运行,就解决问题了。
交流的可以加我:619189810
63ScrollView嵌套ListView带来的问题以及解决方式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。