zoukankan      html  css  js  c++  java
  • 【Android】九宫格的实现

    第一步,布局文件


    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".JokeTabHostActivity"
        android:orientation="vertical"
        >
    	
        <GridView 
            android:id="@+id/GridView"
            android:listSelector="@android:color/transparent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:columnWidth="90dp"
            android:gravity="center"
            android:numColumns="auto_fit"
            android:layout_marginTop="10dp"
            android:stretchMode="columnWidth">
        </GridView>
    
    </LinearLayout>
    

    第二步,在你的activity  中调用初始化Grid

    GridView gridview = (GridView) findViewById(R.id.GridView);
    		ArrayList<HashMap<String, Object>> meumList = new ArrayList<HashMap<String, Object>>();
    		for (int i = 1; i < 4; i++) {
    			HashMap<String, Object> map = new HashMap<String, Object>();
    			if (i == 1) {
    				map.put("ItemImage", R.drawable.a1);
    				map.put("ItemText", "文章精选");
    			} else if (i == 2) {
    				map.put("ItemImage", R.drawable.a2);
    				map.put("ItemText", "幽默笑话");
    			} else {
    				map.put("ItemImage", R.drawable.a5);
    				map.put("ItemText", "期待更多");
    			}
    
    			meumList.add(map);
    		}
    
    		SimpleAdapter saItem = new SimpleAdapter(this, meumList, // 数据源
    				R.layout.item, // xml实现
    				new String[] { "ItemImage", "ItemText" }, // 对应map的Key
    				new int[] { R.id.ItemImage, R.id.ItemText }); // 对应R的Id
    																// //添加Item到网格中
    		gridview.setAdapter(saItem); // 添加点击事件
    		gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    			@SuppressWarnings("static-access")
    			public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
    					long arg3) {
    				int index = arg2 + 1;// id是从0开始的,所以需要+1
    				if (index == 1) {
    					
    						Intent intent = new Intent();
    						intent.setClass(MainActivity.this,
    								CloseTabHostActivity.class);
    						startActivity(intent);
    					
    					
    
    				}
    				if (index == 2) {
    					 Intent intent = new Intent();
    					 intent.setClass(MainActivity.this,
    							 XListViewActivity.class);
    					 startActivity(intent);
    					//showInfo("正在努力码代码中。。。");
    					// finish();//停止当前的Activity,如果不写,则按返回键会跳转回原来的Activity
    				}
    				if (index == 3) {
    					showInfo("期待你的建议,好建议请Q 649175826");
    				}
    			}
    		});


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    springboot + websocket + qpid问题记录
    学习开源项目guns遇到的问题记录
    CSS选择器和jQuery选择器学习总结
    (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
    (深入.Net平台和C#编程)第九章.上机练习.20170417
    (深入.Net平台和C#编程)第八章.上机练习(网络电视精灵).20170415
    (深入.Net平台和C#编程)第十章.课程总复习.20170413
    (深入.Net平台和C#编程)第七章.上机练习.20170412
    (深入.Net平台和C#编程)第六章.简答题5.20170410
    (深入.Net平台和C#编程)第六章.简答题3.20170410
  • 原文地址:https://www.cnblogs.com/shipeng22022/p/4613978.html
Copyright © 2011-2022 走看看