Android自定义view01-ScrollView嵌套GridView
2016-07-29 16:06
453 查看
xml文件里面ScrollView包裹了一个GridView的时候会造成内容显示不全,因为GridView没有测量出子View需要的高度,导致不能显示完全
所以需要从写onMeasure方法 (个人理解)
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int height =MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE>>2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, height);
}
贴出代码
package com.example.activity.custom;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View.MeasureSpec;
import android.widget.GridView;
import android.widget.HorizontalScrollView;
public class MyGridView extends GridView{
public MyGridView(Context context) {
super(context,null);
}
public MyGridView(Context context, AttributeSet attrs) {
super(context, attrs,0);
}
public MyGridView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int height =MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE>>2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, height);
}
}
所以需要从写onMeasure方法 (个人理解)
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int height =MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE>>2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, height);
}
贴出代码
package com.example.activity.custom;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View.MeasureSpec;
import android.widget.GridView;
import android.widget.HorizontalScrollView;
public class MyGridView extends GridView{
public MyGridView(Context context) {
super(context,null);
}
public MyGridView(Context context, AttributeSet attrs) {
super(context, attrs,0);
}
public MyGridView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int height =MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE>>2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, height);
}
}
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories