一、ScrollView + GridView
在ScrollView中放置GridView,无论GridView的高度是设置 wrap_content,还是 match_parent,最终渲染时GridView都会发生形变,原因是 ScrollView 不能正确算出 GridView 的实际显示高度。
解决方法有两个:
- 设定GridView 高度的dp值,同时也可配合使用 values/dimens.xml 进行适配,缺点是适配难度大,不灵活,而且 GridView 的 Adapter 中的 convertView 可能不再重用(GridView不能滚动),导致需要调整 getView 的代码。
- 重写GridView 计算高度的方法:
public class CanInScrollGridView extends GridView { public CanInScrollGridView(Context context) { super(context); } public CanInScrollGridView(Context context, AttributeSet attrs) { super(context, attrs); } public CanInScrollGridView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } @Override public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { // Calculate entire height by providing a very large height hint. // View.MEASURED_SIZE_MASK represents the largest height possible. int expandSpec = MeasureSpec.makeMeasureSpec(MEASURED_SIZE_MASK, MeasureSpec.AT_MOST); super.onMeasure(widthMeasureSpec, expandSpec); ViewGroup.LayoutParams params = getLayoutParams(); params.height = getMeasuredHeight(); //获取实际的显示高度 } }
二、GridView实现伪“瀑布流”
Github上的牛人项目:https://github.com/maurycyw/StaggeredGridView
StaggeredGridView本质上并不是GridView的派生,不过它实现GirdView的功能、并对其进行了扩展,可以使得列表的项目不对称显示,如下图:
相关推荐
这就是所谓的“GridView嵌套应用”。 在ASP.NET中,GridView嵌套通常是通过在模板字段(TemplateField)中添加另一个GridView来实现的。首先,我们需要创建一个外层GridView,然后在某个特定行的TemplateField中...
总之,C#的GridView应用提供了强大而灵活的数据展示和管理功能。结合SqlDataSource,开发者可以轻松地实现数据的检索、展示、编辑和删除,无需大量编写代码。通过熟练掌握GridView的使用,可以大大提高ASP.NET应用...
`GridView`通常用于展示大量小图标或者列表项,比如应用的启动屏幕、照片库等。通过`Adapter`,`GridView`能够绑定数据并动态生成网格中的每个单元格。 结合`ViewPager`和`GridView`,我们可以创建一个可以左右滑动...
在.NET框架中,C#的GridView控件是一个非常强大的数据展示工具,广泛应用于网页和桌面应用的开发。它能够方便地展示数据集、数据库表或其他数据源中的信息,并且提供了丰富的功能,如排序、分页、筛选、编辑、删除等...
本教程将深入探讨GridView的初步应用,包括删除、更新、撤销、编辑、绑定以及翻页功能。 首先,让我们了解GridView的基本结构。GridView由一系列行和列组成,每行包含一个或多个单元格,可以显示数据表中的记录。...
在这个"GridView基本应用实例"中,我们将深入探讨如何利用GridView控件实现这些功能,以及两种不同的数据来源:内存中的数据(DataInMemory)和数据库中的数据(DataFromDatabase)。 首先,让我们来看看如何在...
GridView是一种可以将数据以网格形式排列的视图组件,非常适合用来展示多行多列的数据项,如应用图标和应用名。 首先,我们需要创建一个自定义的Dialog,这可以通过继承`AlertDialog.Builder`类或者直接使用`...
GridView是Windows Forms应用程序中常用的控件,用于展示数据集,如数据库中的表格数据。在.NET框架中,GridView提供了丰富的功能,允许用户进行数据编辑、排序、分页等操作。本主题将深入探讨GridView的高级扩展...
在.NET框架中,GridView控件是ASP.NET Web Forms的一个核心组件,主要用于展示和操作结构化的数据,如数据库表格。在本教程中,我们将深入探讨如何充分利用GridView控件进行各种操作,包括分页、导出导入Excel、排序...
GridView的基础应用涵盖了网页开发中的数据展示和基本操作,对于理解Web应用程序的数据处理至关重要。 一、GridView简介 GridView控件是ASP.NET Web Forms中的一个服务器控件,它能够以表格的形式动态地显示数据源...
以下是对"GridView控件应用9个经典实例"的详细说明: 1. **基础展示** - GridView的基本使用涉及数据源的绑定,如SqlDataSource或ObjectDataSource。通过设置`DataSourceID`属性,可以将数据源与GridView绑定,...
"Android类似桌面应用拖动的GridView"是指一个特殊定制的GridView,它模仿了Android桌面应用的交互方式,允许用户通过拖放操作来改变GridView中各个元素的位置。这种功能在创建自定义启动器、文件管理器或个性化布局...
在这个主题中,我们将深入探讨GridView的一些高级应用,包括全选功能、批量删除以及数据导出到Excel的功能。 1. **全选功能**: GridView的全选功能通常通过在表头添加一个复选框来实现。当用户勾选这个复选框时,...
GridView无代码分页排序 GridView选中,编辑,取消,删除 GridView正反双向排序 GridView和下拉菜单DropDownList结合 GridView和CheckBox结合 鼠标移到GridView某一行时改变该行的背景色方法一 鼠标移到GridView某一...
在ASP.NET开发中,GridView控件是用于展示数据的强大工具,尤其在呈现表格形式的数据时。在本项目中,我们探讨的主题是“GridView内嵌套使用GridView”,这通常是为了实现更复杂的数据显示,例如,当数据有层次关系...