Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android 控件之GridView

Android 控件之GridView

編輯:Android開發實例

GridView是Android中的數據顯示控件,先體驗一下它的效果

這是GridView只呈現圖片的效果。源碼下載

下面詳細介紹一下GridView。

一、簡介

    在二維可滾動網格中呈現子項(Item),Item來自於與之相關的ListAdapter.

二、重要方法

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

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

三、具體應用

1.在布局文件中說明

  1. <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/grid" 
  2.  android:layout_width="match_parent"   
  3.  android:layout_height="match_parent" 
  4.     android:padding="10dp" 
  5.     android:verticalSpacing="10dp" 
  6.       
  7.     android:horizontalSpacing="10dp" 
  8.     android:numColumns="auto_fit" 
  9.     android:columnWidth="60dp" 
  10.     android:stretchMode="columnWidth" 
  11.       
  12.     android:gravity="center" 
  13.     /> 
  14.  

 

2.程序使用

private GridView mGrid;

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

 

3.定義適配器

  1. public class AppsAdapter extends BaseAdapter {  
  2.   public AppsAdapter() {  
  3.   }  
  4.  
  5.   public View getView(int position, View convertView, ViewGroup parent) {  
  6.    ImageView i;  
  7.  
  8.    if (convertView == null) {  
  9.     i = new ImageView(GridDemo.this);  
  10.     i.setScaleType(ImageView.ScaleType.FIT_CENTER);  
  11.     i.setLayoutParams(new GridView.LayoutParams(50, 50));  
  12.    } else {  
  13.     i = (ImageView) convertView;  
  14.    }  
  15.  
  16.    ResolveInfo info = mApps.get(position);  
  17.    i.setImageDrawable(info.activityInfo.loadIcon(getPackageManager()));  
  18.  
  19.    return i;  
  20.   }  
  21.  
  22.   public final int getCount() {  
  23.    return mApps.size();  
  24.   }  
  25.  
  26.   public final Object getItem(int position) {  
  27.    return mApps.get(position);  
  28.   }  
  29.  
  30.   public final long getItemId(int position) {  
  31.    return position;  
  32.   }  
  33.  }  
  34.  

 

4.應用適配器

mGrid.setAdapter(new AppsAdapter());

 

5.獲取圖片

  1. private void loadApps() {  
  2.  Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);  
  3.  mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);  
  4.  
  5.  mApps = getPackageManager().queryIntentActivities(mainIntent, 0);  
  6. }  

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved