安卓学习之ListView和GridView】的更多相关文章

ListView 和 GridView是安卓中显示信息的两个很基本也最常用的控件.他们的用法很相似,但是他俩也是有区别的. ListView显示的数据会将他的item放在一行显示,而且根据内容给出item的大小,下图就是一个ListView显示的例子: 而GridView是一个给定了空间的item,她会以缩小内容的方式显示,如下: 图片1是一张很大的图片,而其他图片很小,但都被放缩成了同等大小的图片显示. gridview是一种固定了的页面布局,而listview能自己改动,总之,gridvie…
List在各种手机应用中都有体现,是安卓UI设计的必修课. 本文将介绍在开发中如何利用ListView和GridView设计自定义列表. 下面分别是用ListView和GridView做的效果: 上面两个看似相差很大,但是其代码非常类似,主要有:     ① 在页面中嵌入ListView或GridView: ListView的activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res…
ListView.GridView显示组图,处理机制相同 <?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="w…
快速入门:添加 ListView 和 GridView 控件 (XAML)   在本文中 先决条件 选择 ListView 或 GridView 将项添加到项集合 设置项目源 指定项目的外观 指定视图布局 向视图中添加标题 设置视图的交互模式 摘要和后续步骤 相关主题 重要的 API ListView GridView 你可以在 XAML 中使用 ListView 或 GridView 控件来显示数据集合,如联系信息列表.库中的图像或电子邮件收件箱中的内容. 目标: 了解如何将 ListView…
  原文地址:http://blog.csdn.net/yuhailong626/article/details/20639217   在自定义View和ViewGroup的时候,我们经常会遇到int型的MeasureSpec来表示一个组件的大小,这个变量里面不仅有组件的尺寸大小,还有大小的模式. 这个大小的模式,有点难以理解.在系统中组件的大小模式有三种: 1.精确模式(MeasureSpec.EXACTLY) 在这种模式下,尺寸的值是多少,那么这个组件的长或宽就是多少. 2.最大模式(Mea…
安卓第六天笔记--ListView 1.AdapteView AdapteView 继承ViewGroup它的本质是容器 AdapterView派生了3个子类: AbsListView AbsSpinner AdapterViewAnimation 这3个类是抽象类 实际使用中采用的是它们的子类 2.Adpate结构 3.使用ArrayAdapter完成ListView显示 ListView使用的是ListAdapter类型的适配器 由于只显示文字,所有使用ArrayAdapter ArrayA…
对于列表控件,WP8.1常用的是ListView.GridView.ListBox控件.其中前两个是从第三个继承来的. 1.ListView控件 它是展示垂直列表的,如下图所示.它十分适合展示数据. 2.GridView控件 它是行列表展示数据的控件,排列图如下.通常用来展示基于图片的数据. 3.控件的Templates 常用的有HeaderTemplate.FooterTemplate.ItemTemplate.本文最下面有相关代码. (其中还有ItemContainerStyle.Items…
今天随便逛逛CSDN,看到主页上推荐了一篇文章Android 高速开发系列 打造万能的ListView GridView 适配器,刚好这两天写项目自己也封装了相似的CommonAdapter,曾经也在github上看到过这种库,于是自己也把自己的代码再次整理出来与大家分享,也希望可以在CSDN这个平台上学到很多其它的东西,以下就一起来看看吧. 平时我们在项目中使用到ListView和GridView组件都是都会用到Adapter,比較多的情况是继承自BaseAdapter,然后实现getCoun…
listView与gridView使用类似,这里讲解gridView的一些数据绑定(x:Bind)基础知识. 顺便学习下如何使用属性通知.(后台中的数据变化会直接显示在UI上,实现动态变化,默认是没有属性通知的) 首先需要声明一个类,添加一些属性. using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using Syst…
referece to : http://blog.csdn.net/beibeixiao/article/details/9032569 1.     在Android开发中会发现,有时listView和GridView的item顶层布局不起作用,即不能设置高度和宽度 原因是当用自定义的adapter时,如果使用convertView= mInflater.inflate(R.layout.material_grid_item, null) 方法就不会起作用,这个 方法的第二个参数是父View…
处理ScrollView和ListView,GridView之间的冲突, 最好的办法就是继承这两个类,重写他们的onMeasure方法即可: ListView: import android.widget.ListView; /** * ScrollView中嵌入ListView,让ListView全显示出来 * @author John * */ public class MyListView extends ListView{ public MyListView(android.conten…
由于ListView,GridView本身都继承于ScrollView,一旦在ScrollView中嵌套ScrollView, 在ScrollView中嵌套使用ListView或者GridView,ListView只会显示一行多一点.两者进行嵌套,即会发生冲突.那么里面的ScrollView高度计算就会出现问题.我们也就无法得到想要的效果.核心解决方案: 重写ListView或者GridView的OnMesure 方法. public class MyListView extends ListV…
在开发的过程中可能需要用到listview嵌套gridview的场景,但是在Android中, 不能在一个拥有Scrollbar的组件中嵌入另一个拥有Scrollbar的组件,因为这不科学,会混淆滑动事件,导致只显示一到两行数据.那么就换一 种思路,首先让子控件的内容全部显示出来,禁用了它的滚动.如果超过了父控件的范围则显示父控件的scrollbar滚动显示内容,思路是这样,一下是代 码. 具体的方法是自定义GridView组件,继承自GridView.重载onMeasure方法:   Java…
即动态获取ListView和GridView的高度 一.对于ListView ListView listview= new ListView(this); setListViewHeightBasedOnChildren(listview);即可 public static void setListViewHeightBasedOnChildren(ListView listView) { // 获取ListView对应的Adapter ListAdapter listAdapter = lis…
1,ListView和GridView中的每一个条目都有分割线,属性android:footerDividersEnabled表示是否显示分割线,默认是为true,即可见.可以自定义的设置分割线的颜色(可以是一张图片),和高度,属性分别是:android:divider=""和android:dividerHeight=""l两个属性. 代码如下: <ListView android:layout_below="@+id/ll_linearLayou…
ScrollView中嵌入原生ListView或GridView,会出现ListView,GridView显示不全的问题. 解决方法:重新构造一个ListView或GridView,重写OnMeasure()方法: // ListView import android.widget.ListView; public class MyListView extends ListView{ public MyListView(android.content.Context context,androi…
我们在真实项目中通常会遇到ListView或者GridView嵌套在ScrollView中问题.但是做的时候会发现,一旦两者进行嵌套,即会发生冲突.得不到我们希望的效果.由于ListView和GridView本身都继承于ScrollView,一旦在ScrollView中嵌套ScrollView,那么里面的ScrollView高度计算就会出现问题.我们也就无法得到想要的效果.下面进入正题,我们将分别讨论ScrollView中嵌套ListView和FGridView的情况: 核心解决方案: 重写Li…
ScrollView 效果 ScrollView 说明 一个ScrollView 嵌套ListView 嵌套GridView的上拉加载更多,下拉刷新的demo. 主要是重写了GridView和LsitView中的onMeasure 方法. 写的比较简单,希望对初学者有帮助. /*** * 主要思路是 * ScrollView 嵌套ListView 嵌套GridView的上拉加载更多,下拉刷新. * * 逻辑在适配器做了处理 * * 我们只让ListView加载2个数据Item,第一个是item对…
直接上关键属性: 设置ListView或GridView的android:clipToPadding = true, 然后通过paddingTop和paddingBottom设置距离就好了.…
众所周知Listview和Gridview的刷新界面的方式是调用adapter.notifyDataSetChanged()进行界面刷新. 但是此方法有其弊端,他是将界面中的数据全部刷新一遍,不论数据有没有变化.如果listview加载了很多的数据(如:100条) 在进行刷新时就会造成很大的系统开销如何像qq空间个人动态那样点赞只刷新一条呢: 主要原理: 对listview的某一个item进行刷新 1.要获取要刷新的item当前索引position和数据 2.对获取的数据进行重置 3.将重置的数…
原文:重新想象 Windows 8 Store Apps (11) - 控件之 ListView 和 GridView [源码下载] 重新想象 Windows 8 Store Apps (11) - 控件之 ListView 和 GridView 作者:webabcd介绍重新想象 Windows 8 Store Apps 之 ListView 和 GridView ListView - 列表控件 GridView - 网格控件 示例1.ListView 的 DemoListViewDemo.xa…
官方有话这样说: A RemoteViews object (and, consequently, an App Widget) can support the following layout classes: FrameLayout LinearLayout RelativeLayout And the following widget classes: AnalogClock Button Chronometer ImageButton ImageView ProgressBar Text…
首先,我们通过两个实例来了解下本篇文章所讲的重点,看下图: 微博: 陌陌: 大家应该对这两款软件并不陌生,接下来,我将列举下本文将要实现的几个点: 1.ListView嵌套GridView,互不冲突,界面显示及操作正常: 2.GridView中的图片依据屏幕大小,自动扩大或缩小以适应屏幕,并始终保持正方形: 3.图片数量不同时,布局不同(如上图的4张图片和6张图片): 4.点击ListView的item和点击Gridview的item互不冲突: 5.在GridView区域外的任何一点点击都可以触…
点击“间隙”,获取“间隙”旁边隐藏的减号按钮(本图片未显示出来) private void TextBlock_MouseDown_2(object sender, MouseButtonEventArgs e) { ContentPresenter contentPres = (sender as FrameworkElement).TemplatedParent as ContentPresenter; DataTemplate dTemplate = contentPres.Content…
Android中ScrollView中嵌套ListView或GridView时在开始进入界面时总是显示中间位置,开头的位置显示不出来.这种情况下只需要在ScrollView的父控件中添加以下两行代码即可. android:focusableInTouchMode="true" android:focusable="true" 还有一个问题:在ScrollView嵌套ListView或GridView时仅仅显示一行或两行,ListView或GridView无法显示全部…
ListView嵌套GridView时,遇到了GridView只显示一行,其余都显示不出来的问题,最终解决办法如下: 需要自定义GridView,重新绘制高度即可: public class MyGridview extends GridView { public MyGridview(Context context) { super(context); } public MyGridview(Context context, AttributeSet attrs, int defStyle)…
ListView: <ListView x:Name="lvFiles" VerticalAlignment="Stretch" Background="Transparent" Width="Auto" AllowDrop="{Binding IsAllowDrop}" Margin="20,0,20,30" ScrollViewer.HorizontalScrollBarVis…
前言 近期在做项目时,使用了一个开源的下拉刷新ListView组件.极其的不稳定,bug还多.稳定的组件又写得太复杂了,jar包较大.在我的一篇博客中也讲述过下拉刷新的实现,即Android打造(ListView.GridView等)通用的下拉刷新.上拉自己主动载入的组件.可是这样的通过改动Margin的形式感觉不是特别的流畅,因此在这漫长的国庆长假又花了点时间用另外的原理实现了一遍,特此分享出来. 基本原理 原理就是自己定义一个ViewGroup,将Header View, Content V…
ListView嵌套GridView即ListView的每个Item中都包含一个GridView:需要注意的是由于ListView和GridView都是可滑动的控件. 所以需要自定义GridView,重写其onMeasure()方法   ***根目录添加一句android:descendantFocusability="blocksDescendants"******** MainActivity如下: 复制代码代码如下: package cn.testlistviewandgridv…
1. ViewPager左右滚动到两边时的渐变色,若想禁止,可以在布局文件中配置:android:overScrollMode="never" 2. ListView,GridView滑动过程中,上下有黑色阴影,可以设置 : android:fadingEdge="none" 3. ListView,GridView去除分割线:想要使用android:dividerHeight="0dp"来达到目的,是不行的,结果还是会有一条细小的分割线,得用a…