ScrollView嵌套ListView,ListView高度自适应

之前做过一个项目,是ScrollView包含GridView和ListView,其中ListView和GridView无法自适应高度,研究了一下,需要重写onMeasure方法,ListView和GridView一样,废话不多说看源码:

import android.content.Context;
import android.util.AttributeSet;
import android.widget.ListView;

public class AdaptiveListView extends ListView {

public AdaptiveListView(Context context) {
super(context);
}

public AdaptiveListView(Context context, AttributeSet attrs) {
super(context, attrs);
}

public AdaptiveListView(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);
}
}

时间: 2024-08-28 12:42:30

ScrollView嵌套ListView,ListView高度自适应的相关文章

ScrollView嵌套使用ListView冲突的问题

因为ScrollView与ListView都是具有滚动条的控件,所以嵌套在一起使用的时候可能会出现事件的冲突,比如我就遇见了ListView中只显示一条数据的问题.解决的办法,就是自定义了一个ListView,重写它的onMeasure()方法: 1 public class MyListView extends ListView { 2 3 public MyListView(Context context) { 4 super(context); 5 // TODO Auto-generat

ExpandableListView 里面嵌套GridView实现高度自适应

很早之前做过一个商城的app 也是第一次做安卓. 实现的效果如下: 因为一开始做安卓,很多写的代码都不规范,在下面上代码的地方,还请高手指点(勿喷,楼主是自尊心很强的屌丝) 这个效果要解决2个大问题, 第一个是ExpandableListView 如何放置gridview  ,这个比较好做 思路就是adapter里实现 第二个是在ExpandableListView里面展开后,GirdView如何能充满ExpandableListView的item, 就是楼上的效果 好,先来解决第一个.如何放置

如何解决在scrollview中的viewpager高度自适应的

时间:2016年3月18日16:47:56 /** * 自动适应高度的ViewPager * @author * */ public class CustomViewPager extends ViewPager { public CustomViewPager(Context context) { super(context); } public CustomViewPager(Context context, AttributeSet attrs) { super(context, attr

android ScrollView嵌套Listview

如果按照平常的设置,ScrollView里面的ListView是无法显示全部的,而且还不能滑动,从stackover flow搜的代码,亲测可以用! 1>给listView设置点击监视事件: ListView lv = (ListView) findViewById(R.id.layout_lv); lv.setOnTouchListener(new OnTouchListener() { // Setting on Touch Listener for handling the touch i

Android中ListVIew高度自适应,解决ScrollView冲突问题以及Android表格

效果图 类似格式, listView_item.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="ma

四种方法解决scrollview嵌套listview,listview高度确定问题

以下文章转自@安卓泡面 在工作中,曾多次碰到ScrollView嵌套ListView的问题,网上的解决方法有很多种,但是杂而不全.我试过很多种方法,它们各有利弊. 在这里我将会从使用ScrollView嵌套ListView结构的原因.这个结构碰到的问题.几种解决方案和优缺点比较,这4个方面来为大家阐述.分析.总结. 实际上不光是ListView,其他继承自AbsListView的类也适用,包括ExpandableListView.GridView等等,为了方便说明,以下均用ListView来代表

在ScrollView中嵌套ListView时,需要根据内容来设置listView的高度

动态设置ListView的高度 public void setListViewHeightBasedOnChildren(ListView mListView) { ListAdapter listAdapter = mListView.getAdapter(); if (listAdapter == null) { return; } int totalHeight = 0; for (int i = 0; i < listAdapter.getCount(); i++) { View lis

浅谈ScrollView嵌套ListView及ListView嵌套的高度计算

引言 在Android开发中,我们有时会需要使用ScrollView中嵌套ListView的需求.例如:在展示信息的ListView上还有一部分信息展示区域,并且要求这部分信息展示区域在ListView信息比较多的时候也是可以滑动的,而不是固定不变的.这时,我们一般会将ScrollView和ListView嵌套在一起使用.但是这会导致ListView展示不全,然后也会有滑动冲突问题.下面我们来看看怎么解决. 解决方案 主动计算和设置ListView的高度,这样就可以合理的展示ListView的高

ScrollView嵌套ListView只显示一行之计算的高度不正确的解决办法(转)

ScrollView嵌套ListView只显示一行之计算的高度不正确的解决办法 分类: android应用开发2013-12-19 09:40 1045人阅读 评论(3) 收藏 举报 AndroidScrollView嵌套ListView显示一行高度不正确 1.前言 从谷歌那里找到的ScrollView嵌套ListView只显示一行的解决办法相信很多人都遇到过,然后大部分都是用这位博主的办法解决的吧 刚开始我也是用这个办法解决的,首先感谢这位哥的大私奉献,贴上地址 http://blog.csd

scrollview嵌套listiview(解决高度问题以及两者滚动冲突问题)不用重写listview

package com.bwie.scrollview_lv_ori; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.view.View.OnTouchListener; i