Android GridView的使用

jopen 12年前發布 | 74K 次閱讀 Android Android開發 移動開發

GridView就是先將控件橫向顯示,然后縱向顯示

Android GridView的使用

效果如上所示

先看一下GridView的布局文件

<?xml version="1.0" encoding="utf-8"?>

    <GridView
       xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/brainheroall"
        android:background="#FFeff1ef"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:numColumns="auto_fit"  
        android:verticalSpacing="10dp"  
        android:horizontalSpacing="10dp"  
        android:columnWidth="90dp"  
        android:stretchMode="columnWidth"  
        android:gravity="center"  
    />
    


這是如何顯示GridView,下面的xml文件是GridView里面如何顯示

<?xml version="1.0" encoding="utf-8"?>  
<RelativeLayout   
         xmlns:android="http://schemas.android.com/apk/res/android"   
         android:layout_height="wrap_content"   
         android:paddingBottom="4dip" android:layout_width="fill_parent">  
         <ImageView   
               android:layout_height="wrap_content"   
               android:id="@+id/ItemImage"   
               android:layout_width="wrap_content"   
               android:layout_centerHorizontal="true">   
         </ImageView>  
         <TextView   
               android:layout_width="wrap_content"   
               android:layout_below="@+id/ItemImage"   
               android:layout_height="wrap_content"   
               android:text=""   
               android:textColor="#FF000000"
               android:layout_centerHorizontal="true"   
               android:id="@+id/ItemText">  
         </TextView>  
</RelativeLayout> 


下面是Java代碼如何使用GridView

package view;

import java.util.ArrayList;
import java.util.HashMap;

import model.HeroSimpleInfo;
import service.ObtainInfo;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.SimpleAdapter;
import android.widget.Toast;

import com.zhychneg.dota.R;

public class BrainHeroActivity extends Activity implements OnItemClickListener{

    GridView gv=null;
    long exitTime=0;
    HeroSimpleInfo []heros=null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.brainheroall);
        gv=(GridView) findViewById(R.id.brainheroall);


        ArrayList<HashMap<String,Object>> al=new ArrayList<HashMap<String,Object>>();


        heros=ObtainInfo.getBrainHeroSimpleInfo();


        for(int i=0;i<heros.length;i++)
        {
            HashMap<String, Object> map = new HashMap<String, Object>();  

            map.put("icon", heros[i].getRes());//添加圖像資源的ID  
            map.put("name", heros[i].getName());//按序號做ItemText  
            al.add(map);  
        }

        SimpleAdapter sa=new SimpleAdapter(this,al,R.layout.gridview_layout,new String[]{"icon","name"},new int[]{R.id.ItemImage,R.id.ItemText});
        gv.setAdapter(sa);
        gv.setOnItemClickListener(this);






    }

    public void onItemClick(AdapterView<?> parent, View view, int position,
            long id) {

        Intent intent =new Intent(this,AboutHeroActivty.class);
        intent.putExtra("HERO", heros[position]);
        this.startActivity(intent);

    }


}


 

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!