日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GridView实践

發布時間:2024/1/17 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GridView实践 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

???? Grid為網格視圖,例如實現類似九宮格的效果,可以首選GridView,該組件中的每一個條目通過ListAdapter和該組件進行關聯。

GridViewExample.java代碼如下:

1 package com.example.lenovo.a1106; 2 import android.app.Activity; 3 import android.content.Intent; 4 import android.content.pm.ResolveInfo; 5 import android.os.Bundle; 6 import android.view.View; 7 import android.view.ViewGroup; 8 import android.widget.BaseAdapter; 9 import android.widget.GridView; 10 import android.widget.ImageView; 11 12 13 14 import java.util.List; 15 16 17 public class GridViewExample extends Activity { 18 private GridView myGridView; 19 private List<ResolveInfo> myAppIcon; //聲明變量,存放桌面應用程序圖標 20 21 @Override 22 protected void onCreate(Bundle savedInstanceState) { 23 super.onCreate(savedInstanceState); 24 setContentView(R.layout.gridview); 25 myGridView = (GridView) findViewById(R.id.myGrid); 26 loadAppIcon(); //加載桌面圖片 27 BaseAdapter adapter = new BaseAdapter() { 28 @Override 29 public int getCount() { //項目個數 30 return myAppIcon.size(); 31 } 32 33 @Override 34 public Object getItem(int position) { //獲取指定位置的項目 35 return myAppIcon.get(position); 36 } 37 38 @Override 39 public long getItemId(int position) { //獲取指定位置項目id 40 return position; 41 } 42 43 //定義每一項顯示的內容 44 @Override 45 public View getView(int position, View convertView, ViewGroup parent) { 46 ImageView imageView; 47 if (convertView == null) { 48 imageView = new ImageView(GridViewExample.this); 49 //創建Image對象 50 51 imageView.setScaleType(ImageView.ScaleType.FIT_CENTER); 52 //設置圖片的填充方式,這里按比例拉伸圖片 53 imageView.setLayoutParams(new GridView.LayoutParams(50, 50)); 54 //設置ImageView的大小為50*50 55 } else { 56 57 imageView = (ImageView) convertView; 58 } 59 ResolveInfo info = myAppIcon.get(position); 60 //獲取myAppIcon中下標為position的ResolveInfo 61 imageView.setImageDrawable(info.activityInfo.loadIcon(getPackageManager())); 62 return imageView; 63 64 } 65 }; 66 myGridView.setAdapter(adapter); 67 68 // myListView.setAdapter(adapter); 69 } 70 71 private void loadAppIcon() { 72 73 Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); 74 //創建Intent 75 mainIntent.addCategory(Intent.CATEGORY_LAUNCHER); 76 //添加桌面應用程序列表到Intent 77 myAppIcon = getPackageManager().queryIntentActivities(mainIntent, 0); 78 } 79 } View Code

gridview.xml代碼如下:

1 <?xml version="1.0" encoding="utf-8"?> 2 3 <GridView 4 xmlns:android="http://schemas.android.com/apk/res/android" 5 android:id="@+id/myGrid" 6 android:orientation="vertical" 7 android:layout_width="match_parent" 8 android:layout_height="match_parent" 9 android:padding="10dp" 10 android:numColumns="auto_fit" 11 android:horizontalSpacing="10dp" 12 android:verticalSpacing="10dp" 13 android:stretchMode="columnWidth" 14 android:gravity="center" />

?

?

當時遇到了個錯誤

說是空對象,然而沒有想到是沒有加載布局文件!!!得長記性!!!

?

轉載于:https://www.cnblogs.com/Lynn0814/p/4943897.html

總結

以上是生活随笔為你收集整理的GridView实践的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。