- 浏览: 334811 次
- 性别:
- 来自: 上海
-
文章分类
最新评论
-
xuanyuanxiaoxue:
...
Android - LayoutInflater -
柴兴博:
不错 多谢
Android 悬浮Activity并可拖动(访悬浮歌词) -
di1984HIT:
写的很好,我收藏一下。
java之动态代理模式(JDK和cglib) -
chinacssnj:
待测试,明天测,测试的结果发给大家
网络开发上传文件到服务器 -
fx_199182:
...
Android之MediaPlayer
下面介绍GridView,先看看效果
1、显示界面
- package com.grid.test;
- import java.util.ArrayList;
- import java.util.List;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.GridView;
- public class GridTest extends Activity {
- private GridView gridview ;
- private List<GridInfo> list;
- private GridAdapter adapter;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.gridlayout);
- gridview = (GridView) findViewById(R.id.gridview);
- list = new ArrayList<GridInfo>();
- list.add(new GridInfo("name1"));
- list.add(new GridInfo("name2"));
- list.add(new GridInfo("name3"));
- list.add(new GridInfo("name4"));
- list.add(new GridInfo("name5"));
- list.add(new GridInfo("name6"));
- list.add(new GridInfo("name6"));
- list.add(new GridInfo("name7"));
- list.add(new GridInfo("name8"));
- list.add(new GridInfo("name9"));
- list.add(new GridInfo("name10"));
- adapter = new GridAdapter(this);
- adapter.setList(list);
- gridview.setAdapter(adapter);
- }
- }
package com.grid.test; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.widget.GridView; public class GridTest extends Activity { private GridView gridview ; private List<GridInfo> list; private GridAdapter adapter; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.gridlayout); gridview = (GridView) findViewById(R.id.gridview); list = new ArrayList<GridInfo>(); list.add(new GridInfo("name1")); list.add(new GridInfo("name2")); list.add(new GridInfo("name3")); list.add(new GridInfo("name4")); list.add(new GridInfo("name5")); list.add(new GridInfo("name6")); list.add(new GridInfo("name6")); list.add(new GridInfo("name7")); list.add(new GridInfo("name8")); list.add(new GridInfo("name9")); list.add(new GridInfo("name10")); adapter = new GridAdapter(this); adapter.setList(list); gridview.setAdapter(adapter); } }
2、组件信息
- package com.grid.test;
- /**
- * Copyright (C) 2010,Under the supervision of China Telecom Corporation
- * Limited Guangdong Research Institute
- * The New Vphone Project
- * @Author fonter.yang
- * @Create date:2010-10-11
- *
- */
- public class GridInfo {
- private String name;
- public GridInfo(String name) {
- super();
- this.name = name;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- }
package com.grid.test; /** * Copyright (C) 2010,Under the supervision of China Telecom Corporation * Limited Guangdong Research Institute * The New Vphone Project * @Author fonter.yang * @Create date:2010-10-11 * */ public class GridInfo { private String name; public GridInfo(String name) { super(); this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
3、Adapter 实现
- package com.grid.test;
- import java.util.List;
- import android.content.Context;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.BaseAdapter;
- import android.widget.ImageView;
- import android.widget.TextView;
- /**
- * Copyright (C) 2010,Under the supervision of China Telecom Corporation Limited
- * Guangdong Research Institute The New Vphone Project
- *
- * @Author fonter.yang
- * @Create date:2010-10-11
- *
- */
- public class GridAdapter extends BaseAdapter {
- private class GridHolder {
- ImageView appImage;
- TextView appName;
- }
- private Context context;
- private List<GridInfo> list;
- private LayoutInflater mInflater;
- public GridAdapter(Context c) {
- super();
- this.context = c;
- }
- public void setList(List<GridInfo> list) {
- this.list = list;
- mInflater = (LayoutInflater) context
- .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- }
- public int getCount() {
- // TODO Auto-generated method stub
- return list.size();
- }
- @Override
- public Object getItem(int index) {
- return list.get(index);
- }
- @Override
- public long getItemId(int index) {
- return index;
- }
- @Override
- public View getView(int index, View convertView, ViewGroup parent) {
- GridHolder holder;
- if (convertView == null) {
- convertView = mInflater.inflate(R.layout.grid_item, null);
- holder = new GridHolder();
- holder.appImage = (ImageView)convertView.findViewById(R.id.itemImage);
- holder.appName = (TextView)convertView.findViewById(R.id.itemText);
- convertView.setTag(holder);
- }else{
- holder = (GridHolder) convertView.getTag();
- }
- GridInfo info = list.get(index);
- if (info != null) {
- holder.appName.setText(info.getName());
- }
- return convertView;
- }
- }
package com.grid.test; import java.util.List; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; /** * Copyright (C) 2010,Under the supervision of China Telecom Corporation Limited * Guangdong Research Institute The New Vphone Project * * @Author fonter.yang * @Create date:2010-10-11 * */ public class GridAdapter extends BaseAdapter { private class GridHolder { ImageView appImage; TextView appName; } private Context context; private List<GridInfo> list; private LayoutInflater mInflater; public GridAdapter(Context c) { super(); this.context = c; } public void setList(List<GridInfo> list) { this.list = list; mInflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); } public int getCount() { // TODO Auto-generated method stub return list.size(); } @Override public Object getItem(int index) { return list.get(index); } @Override public long getItemId(int index) { return index; } @Override public View getView(int index, View convertView, ViewGroup parent) { GridHolder holder; if (convertView == null) { convertView = mInflater.inflate(R.layout.grid_item, null); holder = new GridHolder(); holder.appImage = (ImageView)convertView.findViewById(R.id.itemImage); holder.appName = (TextView)convertView.findViewById(R.id.itemText); convertView.setTag(holder); }else{ holder = (GridHolder) convertView.getTag(); } GridInfo info = list.get(index); if (info != null) { holder.appName.setText(info.getName()); } return convertView; } }
4、单个组件的XML
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_height="wrap_content" android:paddingBottom="4dip"
- android:layout_width="fill_parent">
- <ImageView android:layout_height="wrap_content" android:id="@+id/itemImage"
- android:layout_width="wrap_content" android:layout_centerHorizontal="true" android:src="@drawable/icon">
- </ImageView>
- <TextView android:layout_width="wrap_content"
- android:layout_below="@+id/itemImage" android:layout_height="wrap_content"
- android:text="TextView01" android:layout_centerHorizontal="true"
- android:id="@+id/itemText">
- </TextView>
- </RelativeLayout>
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:paddingBottom="4dip" android:layout_width="fill_parent"> <ImageView android:layout_height="wrap_content" android:id="@+id/itemImage" android:layout_width="wrap_content" android:layout_centerHorizontal="true" android:src="@drawable/icon"> </ImageView> <TextView android:layout_width="wrap_content" android:layout_below="@+id/itemImage" android:layout_height="wrap_content" android:text="TextView01" android:layout_centerHorizontal="true" android:id="@+id/itemText"> </TextView> </RelativeLayout>
5、显示界面的XML
- <?xml version="1.0" encoding="utf-8"?>
- <GridView xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/gridview" android:layout_width="fill_parent"
- android:layout_height="fill_parent" android:numColumns="auto_fit"
- android:verticalSpacing="10dp" android:horizontalSpacing="10dp"
- android:columnWidth="90dp" android:stretchMode="columnWidth"
- android:gravity="center" />
<?xml version="1.0" encoding="utf-8"?> <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/gridview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:numColumns="auto_fit" android:verticalSpacing="10dp" android:horizontalSpacing="10dp" android:columnWidth="90dp" android:stretchMode="columnWidth" android:gravity="center" />
原文:http://www.iteye.com/topic/781403#2000088
发表评论
-
Android中AsyncTask的简单用法
2012-01-13 16:00 1191在开发Android移动客户端的时候往往要使用多线程来进行操 ... -
Android应用的自动升级、更新模块的实现 .
2011-11-16 14:01 694http://www.eoeandroid.com/threa ... -
一个APK反编译利器Apktool
2011-11-16 13:54 1614一个APK反编译利器Apktool APK 本地化 ... -
自定义Android标题栏TitleBar布局
2011-11-14 14:13 1279很多网友发现自己Android程序的标题栏TitleBar区域 ... -
Android GPS获取地理位置 .
2011-11-14 14:11 881import android.app.Activity; i ... -
android ListView详解
2011-11-14 13:48 1082在android开发中ListView是比较常用的组件,它以列 ... -
Android之Content provider 详解
2011-11-14 13:35 2504Android是如何实现应用程序之间数据共享的?一个应用程序可 ... -
Android源码地址
2011-11-12 19:14 1072http://blog.csdn.net/ilittleone ... -
android之File
2011-11-11 22:39 20311:Fileservice package cn.itcas ... -
Android知识补漏
2011-11-09 22:33 01:AndroidManifiest.xml < ... -
深入剖析Android消息机制
2011-11-09 14:13 979在Android中,线程内部或者线程之间进行信息交互时经常会使 ... -
Android之Handler详解(四)
2011-11-09 14:00 1302d、自己创建新的线程,然后在新线程中创建Looper,主线程调 ... -
Android之Handler详解(三)
2011-11-09 13:58 1382c、将消息队列绑定到子线程上,主线程只管通过Handl ... -
Android之Handler详解(二)
2011-11-09 13:54 1692二:sendMessage版本的Handl ... -
Android之Handler详解(一)
2011-11-09 13:22 2325一个Handler允许你发送和处理消息(Message)以及 ... -
关于StartActivityForResult方法的使用
2011-10-31 17:11 1121根据方法名可知 这个方法是要得到启动后的Activity返回的 ... -
Android 悬浮Activity并可拖动(访悬浮歌词)
2011-10-24 16:23 2132天天动听, 这款Android手机上的音乐播放器,相信不少朋友 ... -
Android GWES
2011-10-24 16:13 1225第八章 Android GWES 8.1 View Syst ... -
Android系统服务-WindowManager
2011-10-24 16:10 1475WindowManager是Android中一个重要的服务 ... -
http通信
2011-10-15 17:31 1116HTTP(HyperText Transfer Proto ...
相关推荐
在这个"Android GridView使用例子"中,我们将深入探讨如何有效地利用GridView来构建动态且交互性强的用户界面。 1. **GridView的基本概念** GridView继承自AbsListView,它可以显示一列或多列水平对齐的项目。每个...
在Android开发中,GridView是一种常用的布局控件,它允许我们以网格的形式展示数据。当我们处理大量数据时,分页加载可以提高应用性能,减少内存消耗,并提供更好的用户体验。本篇文章将详细讲解如何在Android中利用...
在这个例子中,我们设置了GridView的列数为1,使其在HorizontalScrollView内以单行显示。 为了让用户选中某项后,再次打开应用时能直接定位到该选中项,我们需要保存用户的选中状态。这可以通过SharedPreferences...
android GridView实现支付宝拖动例子
这个例子就是关于如何在Android的GridView中实现这些高级功能。 首先,让我们详细了解一下GridView的基本概念。GridView继承自AbsListView,它会将数据集(通常来自Adapter)渲染成一个二维的、可滚动的视图。每个...
在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于创建类似照片墙、菜单选项或图标排列等界面。在本教程中,我们将...希望这个例子能帮助你更好地理解和应用GridView。
本示例"android的GridView底部加载更多例子"探讨了如何在GridView中实现无限滚动加载功能,即用户无需点击加载更多按钮,只需上拉屏幕,内容就会自动加载。这种特性极大地提升了用户体验,尤其是在处理大量数据时。 ...
在Android开发中,GridView是一种非常常见的布局控件,它允许我们以网格的形式展示数据,通常用于...在提供的Android例子源码仿Launcher的GridView拖动中,你可以找到完整的实现示例,进一步学习和理解这一功能的细节。
在Android开发中,GridView与ViewFlipper是两种常用的布局组件,它们可以被巧妙地结合以创建出丰富的用户界面。在本示例中,“Android GridView + ViewFlipper布局界面,模仿“机锋市场”是一个源码项目,旨在演示...
总结起来,"GridView的小例子"是一个实践性很强的Android开发教程,涵盖了GridView的基本使用、自定义Adapter、选择器定制等多个重要知识点。通过这个示例,开发者可以深入理解GridView的工作原理,并学会如何根据...
在这个例子中,我们可能使用自定义的Adapter,如GridViewAdapter,将数据集(如ArrayList)转换为可显示的GridView单元格。Adapter的`getView()`方法是关键,负责创建和更新每个单元格的视图。 3. **数据绑定** 在...
在这个"gridview添加删除例子"中,我们将深入探讨如何动态地在GridView中添加和删除数据。 首先,GridView的添加功能通常涉及到后台数据源的管理。在ASP.NET中,可以使用诸如SqlDataSource或EntityDataSource这样的...
在Android开发中,ListView和GridView是两种非常常用的控件,它们用于展示大量数据,并且具有良好的滚动性能。这两个组件在用户界面设计中扮演着至关重要的角色,尤其在展示列表或网格形式的数据时。本篇文章将深入...
在Android开发中,GridView是一种非常常见的视图组件,它允许我们以网格的形式展示数据,通常用于创建类似照片相册、应用列表等界面。本教程将深入讲解如何在Android中使用GridView进行表格排列。 首先,GridView的...
ListView和GridView里加载图片,有很多种实现方式,但是如果用不好很容易导致各种问题,比如内存溢出、图片错位、体验效果差等问题。 现在我将开源项目GreenDroid里异步加载图片代码提取出来做成一个jar包。有效...
在这个例子中,“andriod gridview例子”是一个可以直接导入并运行的Android工程,旨在帮助开发者理解如何在实际项目中使用GridView。 GridView的基本用法: 1. **布局定义**:在XML布局文件中,你需要添加一个`...
在Android开发中,GridView是一种常用的布局管理器,它允许我们以网格的形式展示数据。通常,GridView默认是垂直滚动的,但有时我们可能需要创建一个可以横向滑动的GridView,这在展示大量横向数据或者创建独特界面...
在"android-UI.rar"的子文件"DuanXinTong"可能是一个包含多个例子的项目,每个例子展示了不同的功能或使用场景,如动态加载数据、动画效果、下拉刷新、侧滑删除等。这些实例可以帮助开发者理解`ListView`和`GridView...
在这个例子中,我们可能会创建一个自定义的`GridViewAdapter`,并重写`getView()`方法来定制每个单元格的视图。同时,别忘了在`GridView`中设置适配器: ```java GridView gridView = findViewById(R.id.grid_view)...