Android中用GridView實現九宮格的兩種方法(轉)

Android中用GridView實現九宮格的兩種方法
http://blog.csdn.net/shakespeare001/article/details/7768455

?

1.傳統辦法:實現一個繼承BaseAdapter的 ImageAdapter

package com.test;  import android.app.Activity;  
import android.content.Context;  
import android.os.Bundle;  
import android.view.LayoutInflater;  
import android.view.View;  
import android.view.ViewGroup;  
import android.widget.AdapterView;  
import android.widget.BaseAdapter;  
import android.widget.GridView;  
import android.widget.ImageView;  
import android.widget.TextView;  
import android.widget.Toast;  
import android.widget.AdapterView.OnItemClickListener;  public class GridViewActivity extends Activity {  //存放各功能圖片  private Integer[] mFunctionPics = {R.drawable.mobilesecurity,R.drawable.infosecurity,  R.drawable.no_interrupt,R.drawable.bianjiejieting,R.drawable.xiaomishu  ,R.drawable.sms_send_attime,R.drawable.yule,R.drawable.setting};  
//存放各功能的名稱 private Integer[] mFunctionName = {R.string.phone_tools_box_name1, R.string.phone_tools_box_name2,R.string.phone_tools_box_name3, R.string.phone_tools_box_name4,R.string.phone_tools_box_name5, R.string.phone_tools_box_name6,R.string.phone_tools_box_name7, R.string.phone_tools_box_name8};
@Override
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.gridview_main); GridView gridView= (GridView) this.findViewById(R.id.gridView); gridView.setAdapter(new ImageAdapter(this)); gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {Toast.makeText(GridViewActivity.this, "圖片ID:" + mFunctionPics[position],1).show(); } }); } public class ImageAdapter extends BaseAdapter {private Context mContext; private LayoutInflater inflater;
private class GridHolder {ImageView phone_function_pic; TextView phone_function_name; }
public ImageAdapter(Context c){ mContext = c; inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); }
@Override
public int getCount() { return mFunctionPics.length; }@Override public Object getItem(int position) { return position; }@Override public long getItemId(int position) { return position; }@Override public View getView(int position, View convertView, ViewGroup parent) { GridHolder holder; if(convertView == null) { convertView = inflater.inflate(R.layout.gridview_item, null); holder = new GridHolder(); holder.phone_function_pic = (ImageView) convertView.findViewById(R.id.function_view); holder.phone_function_name = (TextView) convertView.findViewById(R.id.function_name); convertView.setTag(holder); } else { holder = (GridHolder) convertView.getTag(); }holder.phone_function_pic.setImageResource(mFunctionPics[position]); holder.phone_function_name.setText(mFunctionName[position]); return convertView; } } }

?

2.跟ListView類似的數據綁定方式(SimpleAdapter, ArrayList<Map<String, Object>>)

http://blog.csdn.net/hellogv/article/details/4567095

轉載于:https://www.cnblogs.com/bluestorm/p/3682785.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/273777.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/273777.shtml
英文地址,請注明出處:http://en.pswp.cn/news/273777.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

django框架中的模型

文章目錄關聯關系Many-to-one relationshipsMany-to-many relationshipsdjango學習——model中的get和filter方法的區別模型模型是您的數據唯一而且準確的信息來源。它包含您正在儲存的數據的重要字段和行為。一般來說&#xff0c;每一個模型都映射一個數據庫表。基礎&#xff…

虛擬主機TOMCAT配置

在tomcat中添加虛擬主機&#xff1a;   編輯"tomcat\conf\server.xml"&#xff0c;在"<Engine></Engine>"元素中新加子元素"<Host></Host>"&#xff0c;如下&#xff1a;  </Host>     <Host name&quo…

django框架中表單

參考官方文檔,太詳細了 (https://docs.djangoproject.com/zh-hans/2.1/topics/forms/)

鳥哥學習筆記六(基礎篇第十一章)

type:查看指令是否是bash內建指令 變量的設定規則 1. 變量與變量內容以一個等號『』來連結&#xff0c;如下所示&#xff1a; 『mynameVBird』 2. 等號兩邊不能直接接空格符&#xff0c;如下所示為錯誤&#xff1a; 『myname VBird』或『mynameVBird Tsai』3. 變量名稱只能…

django-models類索引外鍵時候的related_name屬性作用

其實可以就理解為,一對多關系拿對象的解決 可以把引用理解為主從關系 主引用從,即一對多 , 注意外鍵字段是放在多的一端的,比如一個班級class 有很多同學 students,那么就在students類里面設置class字段值是外鍵類型 從students拿class數據很好拿, studet.class就拿到了 但是從…

查找算法分析

參考&#xff1a; https://www.cnblogs.com/maybe2030/p/4715035.html#_label0

PPT設計里的小技巧

首先想說的是PPT設計&#xff0c;現在還是有很多人只把PPT當成一個存放文字和圖片的軟件&#xff0c;說的更直接點就是當是一個可以全屏放映內容的軟件。但是我想說的是PPT已經走向了設計類型的軟件&#xff0c;當Microsoft office Powerpoint2010正式版出來的時候這種感覺更盛…

PDFlib免費下載地址及詳細介紹手冊

PDFlib是一個用于創建PDF文檔的開發工具,也可直接在你的服務器端產生PDF輸出, 可利用PDFLib提供的簡單易用的API&#xff08;應用編程接口&#xff09;在服務器或客戶端產生PDF文檔, PDFlib在生成PDF文檔時不需要第3方軟件的支持,也不需要其它工具。此產品屬于產品 PDFlibPDI 的…

Hbase時間同步

如果Hbase的時間沒有同步&#xff0c;啟動主節點會起來&#xff0c;子節點的regionServer就不會起來。 錯誤日志如下&#xff1a; aused by: org.apache.hadoop.hbase.ipc.RemoteWithExtrasException(org.apache.hadoop.hbase.ClockOutOfSyncException): org.apache.hadoop.hba…

高德地圖AmapSDKDemo運行

①file/new/other/androd Application Poject&#xff0c;選擇SDKDemo&#xff0c;復制到workspace ②申請amap的key&#xff0c;名字在res/values/strings/的demo_title&#xff1a;為AMapsD Demo ③run-as可以在模擬器里也可以在手機上。 轉載于:https://www.cnblogs.com/jzz…

GCD,大家都知道的回顧

GCD&#xff0c;自iOS4.0吧&#xff0c;比block還要早&#xff0c;他的用處主要是體現在線程方面&#xff0c;比如你有個比較麻煩的而且循環比較大的代碼段什么&#xff0c;比如有個后臺下載什么的&#xff0c;這都必須放在子線程里一個放在子線程里執行&#xff0c;為了不影響…

對邏輯數據庫的操作

使用數據庫語言時&#xff0c;一定要注意以分號結尾( ;)1、創建數據庫CREATE DATABASE 數據庫名&#xff1b; CREATE DATABASE Scores;//創建指定名稱的數據庫&#xff0c;字符集使用的是“安裝數據庫時的指定的字符集”&#xff1b;CREATE DATABASE 數據庫名 CHARACTER SET 字…

數據庫---表的操作

1、創建表格式 &#xff1a; create table 表名(字段名1 類型(長度) 約束&#xff0c;字段名2 類型(長度) 約束&#xff0c;... ); 示例&#xff1a; CREATE TABLE stu(id INT PRIMARY KEY , #primary key&#xff1a;設置為主鍵&#xff0c;被修飾為主鍵的數據&#xff0c;不能…

auto_ptr解析

轉自 http://www.cppblog.com/SmartPtr/archive/2007/07/05/27549.htmlauto_ptr解析auto_ptr是當前C標準庫中提供的一種智能指針&#xff0c;或許相對于boost庫提供的一系列眼花繚亂的智能指針&#xff0c; 或許相對于Loki中那個無所不包的智能指針&#xff0c;這個不怎么智能…

Spring——自定義屬性編輯器+Bean的生存范圍+Bean的生命周期

一、自定義屬性編輯器&#xff08;一個類&#xff09;&#xff1a; 步驟&#xff1a; 1.寫一個類&#xff0c;這個類繼承PropertyEditorSupport。 2.重寫setAsText()方法。 3.在bean.xml文件中添加屬性編輯器的bean。 例子&#xff1a;點擊打開鏈接 二、Bean的生存范圍&#xf…

數據庫---增刪改查

1、添加數據INSERT INTO 表名(字段名1,字段名2...) values(值1,值2...); INSERT INTO newstu(id,name)values(12,胡歌);INSERT INTO 表名 values(值1&#xff0c;值2); INSERT INTO newstu values(12,胡歌); 注意&#xff1a; 值與字段必須一一對應&#xff0c;且個數相同&…

數據庫---查詢(詳細)

1、查詢 SELECT * FROM 表名 WHERE 條件&#xff1b; (1)、SELECT * FROM 表名&#xff1b;#查詢表內的所有數據 SELECT * FROM PRODUCT;(2)、SELECT 字段1&#xff0c;字段2... FROM 表名;#查詢表內的指定字段的數據 SELECT PIN,PRICE FROM PRODUCT; (3)、SELECT * FRO…

微信公眾平臺開發接口PHP SDK完整版

官方提供的SDK只有一個文本消息功能&#xff0c;我們將所有消息的消息類型及事件響應都整理了進來&#xff0c;并且加入日志記錄&#xff0c;代碼如下&#xff1a; 更新日志&#xff1a; 2013-01-01 版本1.02014-03-15 增加圖片、視頻、語音的內容回復2014-04-09 增加菜單鏈接事…

BZOJ3570 : DZY Loves Physics I

考慮兩個質量均為m&#xff0c;速度分別v1、v2的小球發生完全彈性碰撞的影響&#xff1a; 由動能守恒得&#xff1a; $\frac{1}{2}mv_1^2\frac{1}{2}mv_2^2\frac{1}{2}mv_1^2\frac{1}{2}mv_2^2$$v_1^2v_2^2v_1^2v_2^2$ 由動量守恒得&#xff1a; $mv_1mv_2mv_1mv_2$$v_1v_2v_1v…

數據庫---主鍵約束

1、設置主鍵約束(1)、方式一&#xff1a;創建表時&#xff0c;在字段在描述處聲明指定字段為主鍵&#xff1b; CREATE TABLE 表名(字段 類型(長度) PRIMARY KEY,字段 類型(長度) );CREATE TABLE STUDENT(STU_ID INT PAIMARY KEY,STU_NAME VARCHAR(255) );(2)、方式二&#xff1…