http://www.cnblogs.com/salam/archive/2010/10/06/1844596.html

GridView是Android中的数据显示控件,先体验一下它的效果

这是GridView只呈现图片的效果。源码下载

下面详细介绍一下GridView。

一、简介

    在二维可滚动网格中呈现子项(Item),Item来自于与之相关的ListAdapter.

二、重要方法

  getStretchMode():获取GridView的延伸模式。

  onKeyDown(int keyCode, KeyEvent event):默认KeyEvent.Callback.onKeyMultiple()

三、具体应用

1.在布局文件中说明

<GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/grid"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:verticalSpacing="10dp"

android:horizontalSpacing="10dp"
android:numColumns="auto_fit"
android:columnWidth="60dp"
android:stretchMode="columnWidth"

android:gravity="center"
/>

2.程序使用

private GridView mGrid;

mGrid = (GridView) findViewById(R.id.grid);

3.定义适配器

public class AppsAdapter extends BaseAdapter {
public AppsAdapter() {
}

public View getView(int position, View convertView, ViewGroup parent) {
ImageView i;

if (convertView == null) {
i = new ImageView(GridDemo.this);
i.setScaleType(ImageView.ScaleType.FIT_CENTER);
i.setLayoutParams(new GridView.LayoutParams(50, 50));
} else {
i = (ImageView) convertView;
}

ResolveInfo info = mApps.get(position);
i.setImageDrawable(info.activityInfo.loadIcon(getPackageManager()));

return i;
}

public final int getCount() {
return mApps.size();
}

public final Object getItem(int position) {
return mApps.get(position);
}

public final long getItemId(int position) {
return position;
}
}

4.应用适配器

mGrid.setAdapter(new AppsAdapter());

5.获取图片

private void loadApps() {
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);

mApps = getPackageManager().queryIntentActivities(mainIntent, 0);
}

更多相关文章

  1. android 获取字符串在屏幕中所占像素宽度和高度
  2. Android获取控件的大小
  3. Android中相机拍照并获取路径
  4. Android本地视频播放器开发--搜索本地视频(1)
  5. Android(安卓)学习记录-获取天气API
  6. 让Android应用程序申请获取ROOT权限
  7. android 唯一识别码笔记
  8. 【Android】深入理解Android中的自定义属性
  9. 获取手机的视频和图片的缩略图

随机推荐

  1. java与c哪个简单?
  2. .NET中async异步、thread多线程
  3. c++换行符有哪些
  4. c++如何实现字符串分割函数split?(代码示例
  5. c语言是一种什么编译形式的语言
  6. 深入了解数组、List和ArrayList的区别
  7. c++怎么运行
  8. 浅谈C#方法的六种参数
  9. C#之正则表达式介绍
  10. 数据结构排序算法总结