溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Android開發(fā)中GridView用法示例

發(fā)布時(shí)間:2020-09-18 08:22:16 來源:腳本之家 閱讀:233 作者:王曉九 欄目:移動(dòng)開發(fā)

本文實(shí)例講述了Android開發(fā)中GridView用法。分享給大家供大家參考,具體如下:

Android的GridView控件用于把一系列的空間組織成一個(gè)二維的網(wǎng)格顯示出來,應(yīng)用的比較多的就是組合圖片顯示。下面我就詳細(xì)講一個(gè)例子。

首先寫一個(gè)類繼承BaseAdapter

1. Java代碼

package com.yarin.android.Examples_04_19;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
public class ImageAdapter extends BaseAdapter
{
  // 定義Context
  private Context   mContext;
  // 定義整型數(shù)組 即圖片源
  private Integer[]  mImageIds  =
  {
      R.drawable.img1,
      R.drawable.img2,
      R.drawable.img3,
      R.drawable.img4,
      R.drawable.img5,
      R.drawable.img6,
      R.drawable.img7,
      R.drawable.img8,
      R.drawable.img1,
  };
  public ImageAdapter(Context c)
  {
    mContext = c;
  }
  // 獲取圖片的個(gè)數(shù)
  public int getCount()
  {
    return mImageIds.length;
  }
  // 獲取圖片在庫(kù)中的位置
  public Object getItem(int position)
  {
    return position;
  }
  // 獲取圖片ID
  public long getItemId(int position)
  {
    return position;
  }
  public View getView(int position, View convertView, ViewGroup parent)
  {
    ImageView imageView;
    if (convertView == null)
    {
      // 給ImageView設(shè)置資源
      imageView = new ImageView(mContext);
      // 設(shè)置布局 圖片120×120顯示
      imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
      // 設(shè)置顯示比例類型
      imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
    }
    else
    {
      imageView = (ImageView) convertView;
    }
    imageView.setImageResource(mImageIds[position]);
    return imageView;
  }
}

2. Java代碼

package com.yarin.android.Examples_04_19;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;
public class Activity01 extends Activity
{
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    //取得GridView對(duì)象
    GridView gridview = (GridView) findViewById(R.id.gridview);
    //添加元素給gridview
    gridview.setAdapter(new ImageAdapter(this));
    // 設(shè)置Gallery的背景
    gridview.setBackgroundResource(R.drawable.bg0);
    //事件監(jiān)聽
    gridview.setOnItemClickListener(new OnItemClickListener() {
      public void onItemClick(AdapterView<?> parent, View v, int position, long id)
      {
        Toast.makeText(Activity01.this, "你選擇了" + (position + 1) + " 號(hào)圖片", Toast.LENGTH_SHORT).show();
      }
    });
  }
}

3. 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"
/>

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android控件用法總結(jié)》、《Android開發(fā)入門與進(jìn)階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android數(shù)據(jù)庫(kù)操作技巧總結(jié)》及《Android資源操作技巧匯總》

希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI