• Android控件学习笔记之 GridView(实现九宫格)


    实现九宫格

    Main.java

    package cn.test;

    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.Button;

    public class Main extends Activity {
        
    private Button btn_viewItemAndText;
        
    private Button btn_viewGridViewList;
        @Override
        
    public void onCreate(Bundle savedInstanceState) {
            
    super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            initControl();
            setControlListener();
        }
        
        
    /**
         * 初始化控件
         
    */
        
    private void initControl(){
            btn_viewItemAndText
    =(Button)findViewById(R.id.btn_viewItemAndText);
            btn_viewGridViewList
    =(Button)findViewById(R.id.btn_viewGridViewList);
        }
        
        
    /**
         * 增加控件监听
         
    */
        
    private void setControlListener(){
            btn_viewItemAndText.setOnClickListener(onClickViewItemAndTextListener);
            btn_viewGridViewList.setOnClickListener(onCLickViewGridViewListListener);
        }
        
        
    /**
         * 图文列表按钮事件
         
    */
        
    private View.OnClickListener onClickViewItemAndTextListener = new View.OnClickListener() {
            @Override
            
    public void onClick(View v) {
                Log.v(
    "OnClick ""btn_viewItemAndText");
                Intent intent 
    = new Intent(Main.this, ItemAndTextListView.class);
                startActivity(intent);
            }
        };
        
        
    private View.OnClickListener onCLickViewGridViewListListener=new View.OnClickListener() {
            @Override
            
    public void onClick(View v) {
                Log.v(
    "OnClick ""btn_viewGridViewList");
                Intent intent 
    = new Intent(Main.this, GridViewList.class);
                startActivity(intent);
            }
        };
    }
    GridViewList.java

    package cn.test;

    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;

    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.GridView;
    import android.widget.SimpleAdapter;

    public class GridViewList extends Activity {
        
    private GridView gridview;

        
    public void onCreate(Bundle savedInstanceState) {
            
    super.onCreate(savedInstanceState);
            setContentView(R.layout.gridview);
            initControl();
        }
        
        
    /**
         * 初始加载控件
         
    */
        
    private void initControl(){
            SimpleAdapter adapter 
    = new SimpleAdapter(this, getData(), R.layout.gridviewitem, new String[]{"ItemImage""ItemText"}, new int[]{R.id.ItemImage, R.id.ItemText});
            gridview 
    = (GridView)findViewById(R.id.gridView1);
            gridview.setAdapter(adapter);
        }

        
    /**
         * 模拟数据
         * 
    @return
         
    */
        
    private List<Map<String, Object>> getData() {
            List
    <Map<String, Object>> items = new ArrayList<Map<String, Object>>();
            
    for (int i = 0; i <20; i++) {
                Map
    <String, Object> item = new HashMap<String, Object>();
                item.put(
    "ItemImage", R.drawable.icon);
                item.put(
    "ItemText""九宫项目" + i);
                items.add(item);
            }
            
    return items;

        }
    }

    gridview.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
      
    xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation
    ="vertical"
      android:layout_width
    ="match_parent"
      android:layout_height
    ="match_parent">

    <GridView android:layout_height="wrap_content" android:id="@+id/gridView1"
        android:layout_width
    ="match_parent" android:numColumns="auto_fit"
        android:horizontalSpacing
    ="10dp" android:verticalSpacing="10dp"
        android:columnWidth
    ="90dp" android:stretchMode="columnWidth"
        android:gravity
    ="center">

    </GridView>
        
    </LinearLayout>

    gridviewitem.xml

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout
      
    xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation
    ="vertical"
      android:layout_width
    ="match_parent"
      android:layout_height
    ="match_parent">
        
    <ImageView android:layout_width="wrap_content"
            android:layout_height
    ="wrap_content" android:id="@+id/ItemImage"></ImageView>
        
    <TextView android:layout_height="wrap_content" android:id="@+id/ItemText"
            android:layout_width
    ="wrap_content" android:layout_below="@+id/ItemImage"></TextView>
        
    </RelativeLayout>
    AndroidManifest.xml

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package
    ="cn.test"
          android:versionCode
    ="1"
          android:versionName
    ="1.0">
        
    <uses-sdk android:minSdkVersion="8" />

        
    <application android:icon="@drawable/icon" android:label="@string/app_name">
            
    <activity android:name=".Main"
                      android:label
    ="@string/app_name">
                
    <intent-filter>
                    
    <action android:name="android.intent.action.MAIN" />
                    
    <category android:name="android.intent.category.LAUNCHER" />
                
    </intent-filter>
            
    </activity>
     
              
    <activity android:name=".ItemAndTextListView"
                      android:label
    ="@string/app_name">
                
    <intent-filter>
                    
    <action android:name="android.intent.action.itemAndTextListView" />
                    
    <category android:name="android.intent.category.DEFAULT" />
                
    </intent-filter>
            
    </activity>
             
    <activity android:name=".GridViewList"
                      android:label
    ="@string/app_name">
                
    <intent-filter>
                    
    <action android:name="android.intent.action.gridViewList" />
                    
    <category android:name="android.intent.category.DEFAULT" />
                
    </intent-filter>
            
    </activity>
        
    </application>
    </manifest>
  • 相关阅读:
    Difference (第k大(二分)+双指针+ST表)+(很多小细节!!!!!) (MINIEYE杯十六届)
    electronvue实现自定义区域拖拽窗口
    PHP 发送短信
    C#VS2017快捷操作(查看方法重载)
    bootstrapdatetimepicker源代码分析
    Linux下的dstat命令详解以及部分参数说明
    《金字塔原理》
    三年职业生涯回顾
    C++_02_类型转换
    C++_03_动态内存与智能指针
  • 原文地址:https://www.cnblogs.com/skyblue/p/2159200.html
Copyright © 2020-2023  润新知