Android ScrollView 下嵌套 ListView 或 GridView出现问题解决办法
时间:2022-07-27
本文章向大家介绍Android ScrollView 下嵌套 ListView 或 GridView出现问题解决办法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Android ScrollView 下嵌套 ListView 或 GridView出现问题解决办法
ScrollView 下嵌套 ListView 或 GridView 会发列表现数据只能显示一行。因为他们都是滚动结构,两个滚动条放到一起就会引起冲突。
解决此问题可以通过计算 ListView 高度或重写 ListView 的 onMeasure 方法来解决。下面介绍通过重写 onMeasure 方法来解决问题。
重写 onMeasure 方法如下:
public class ScrollListView extends ListView {
public ScrollListView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int mExpandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE 2,
MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, mExpandSpec);
}
}
public class ScrollGridView extends GridView {
public ScrollGridView(Context context, ttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(
Integer.MAX_VALUE 2, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}
ScrollView 需要注意的地方:
1、ScrollView 只支持垂直滚动。
2、ScrollView 只能添加一个子控件 。如果有多个子控件怎么办呢,直接在这些子控件外面再套一层 LinearLayout 就 OK 了。
以上就是关于Android 开发ScrollView 嵌套出现问题的解决办法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- SqlServer批量删除表
- java 获取一天内crontab任务执行的时间点
- Python自学成才之路 魔术方法之一元,二元运算符
- Python自学成才之路 魔术方法之打印对象实例
- Python自学成才之路 装饰器必用的wraps注解
- Python自学成才之路 使用函数作为装饰器
- Python自学成才之路 装饰器编程之初试装饰器
- Python自学成才之路 元类中的__new__和__init__方法
- Centreon+Nagios实战第七篇——安装NRPE
- Python自学成才之路 详解类的三个重要方法__new__,__init__,__call__
- Centreon+Nagios实战第五篇——监控端安装Centreon
- Centreon+Nagios实战第四篇——监控端安装NDOUtils
- python自学成才之路 类属性和实例属性,__slots__方法
- 算法初步 基本概念 最大子数组和
- Oracle数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名详解