成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android如何實現uc瀏覽器一樣的菜單

移動開發 Android
菜單開發也是程序員經常需要關注的,如何使菜單變得更加方便用戶使用是每一個開發者都要面臨的實際問題,今天給Android開發者介紹一下如何開發出像UC瀏覽器一樣的菜單。使用AlertDialog生成菜單,利用setView()方法設置菜單視圖。

菜單開發也是程序員經常需要關注的,如何使菜單變得更加方便用戶使用是每一個開發者都要面臨的實際問題,今天給Android開發者介紹一下如何開發出像UC瀏覽器一樣的菜單。使用AlertDialog生成菜單,利用setView()方法設置菜單視圖。

布局如下:

1、菜單布局

利用GridView

<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width
="wrap_content" android:layout_height="wrap_content"  
    android:orientation
="vertical">  
    
<GridView android:id="@+id/menu"  
        android:layout_width
="fill_parent"  
        android:layout_height
="fill_parent"  
        android:numColumns
="2"  
         android:verticalSpacing
="5dip"  
         android:horizontalSpacing
="5dip"  
         android:stretchMode
="columnWidth"  
         android:gravity
="center"></GridView>  
</LinearLayout>  

2、每一個item的布局

<?xml version="1.0" encoding="utf-8"?>  
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:id
="@+id/RelativeLayout_Item" android:layout_width="wrap_content"  
    android:layout_height
="wrap_content" android:paddingBottom="5dip">  
    
<ImageView android:id="@+id/item_image"  
        android:layout_centerHorizontal
="true" android:layout_width="wrap_content"  
        android:layout_height
="wrap_content"></ImageView>  
    
<TextView android:layout_below="@id/item_image" android:id="@+id/item_text"  
        android:layout_centerHorizontal
="true" android:layout_width="wrap_content"  
        android:layout_height
="wrap_content" android:text="選項"></TextView>  
</RelativeLayout>  

主程序代碼如下:

代碼比較簡單,注釋非常詳細

package com.cloay.down.utils;  
  
import java.util.ArrayList;  
import java.util.HashMap;  
  
import com.cloay.down.R;  
  
import android.app.AlertDialog;  
import android.content.Context;  
import android.view.View;  
import android.widget.AdapterView;  
import android.widget.AdapterView.OnItemClickListener;  
import android.widget.GridView;  
import android.widget.SimpleAdapter;  
/** 
* 菜單工具類 
* MenuUtil.java 
* @author cloay 
* 2011-10-25 
*/  
public class MenuUtil {  
    
private static AlertDialog menuDialog;// menu菜單Dialog  
    
private static GridView menuGrid;  
      
    
/** 菜單圖片 **/  
    static 
int[] menu_image_array = { R.drawable.menu_open_in_background, R.drawable.menu_redownload, R.drawable.menu_detail, R.drawable.menu_delete };  
    
/** 菜單文字 **/  
    static 
String[] menu_name_array = { "打開""重新下載""詳細""刪除"};  
    
public static void ShowMenuDialog(final Context context){  
        View menuView 
= View.inflate(context, R.layout.menu, null);  
        menuDialog 
= new AlertDialog.Builder(context)  
        .setView(menuView)  
        .create();  
        menuDialog.show();  
        menuGrid  
= (GridView) menuView.findViewById(R.id.menu);  
        menuGrid.setAdapter(getMenuAdapter(context, menu_name_array, menu_image_array));  
        menuGrid.setOnItemClickListener(
new OnItemClickListener() {  
            
//監聽menu按鈕事件  
            @Override  
            
public void onItemClick(AdapterView<?> parent, View view,  
                    
int position, long id) {  
                switch(position){  
                
case 0:     //open file  
                      
                    break;  
                
case 1:     //redownload 重新下載  
                      
                    break;  
                
case 2:     //file details    
                      
                    break;  
                
case 3:     //delete file  
                      
                    break;  
                }  
            }  
        });  
    }  
      
    
/** 
     
* 為menuGrid設置Adapter 
     
* @param context 
     
* @param menuNameArray 
     
* @param imageResourceArray 
     
* @return 
     
*/  
    
private static SimpleAdapter getMenuAdapter(Context context, String[] menuNameArray,  
            
int[] imageResourceArray) {  
        ArrayList
<HashMap<StringObject>> data = new ArrayList<HashMap<StringObject>>();  
        
for (int i = 0; i < menuNameArray.length; i++) {  
            HashMap
<StringObject> map = new HashMap<StringObject>();  
            map.put(
"itemImage", imageResourceArray[i]);  
            map.put(
"itemText", menuNameArray[i]);  
            data.add(map);  
        }  
        SimpleAdapter simperAdapter 
= new SimpleAdapter(context, data,  
                R.layout.item_menu, 
new String[] { "itemImage""itemText" },  
                
new int[] { R.id.item_image, R.id.item_text });  
        return simperAdapter;  
    }  
}  
責任編輯:景琦 來源: Android
相關推薦

2012-03-20 11:07:08

2015-09-01 17:09:41

uc瀏覽器源碼

2011-12-08 15:40:16

UC瀏覽器

2017-03-22 20:30:40

2021-06-04 15:55:32

瀏覽器UC瀏覽器安卓手機

2021-01-28 07:06:55

Microsoft Edge瀏覽器 Dev 開發

2010-09-18 17:07:13

2013-12-24 14:57:22

android模擬器

2020-02-04 17:11:21

Chrome瀏覽器UC瀏覽器

2020-02-05 10:59:49

瀏覽器ChromeUC瀏覽器

2014-01-13 11:09:42

UC瀏覽器PC智能電視

2010-04-05 21:57:14

Netscape瀏覽器

2013-01-17 14:55:49

2013-11-18 14:42:53

瀏覽器渲染

2012-03-20 11:31:58

移動瀏覽器

2012-03-19 17:25:22

2012-03-20 11:41:18

海豚瀏覽器

2011-09-06 17:47:21

瀏覽器單窗口多任務

2010-08-10 09:40:23

Flex與瀏覽器交互
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色婷婷精品国产一区二区三区 | 福利视频大全 | 久久天堂 | 狠狠干天天干 | 人人干天天干 | 99亚洲综合| 一区二区av | 视频一区二区三区四区五区 | 风间由美一区二区三区在线观看 | 日韩av啪啪网站大全免费观看 | 国产一级片免费在线观看 | 一区二区视频在线 | 一级免费毛片 | 日韩成人免费视频 | 一级国产精品一级国产精品片 | 一区二区三区不卡视频 | 中文字幕第三页 | 国产成人精品午夜 | 男女羞羞视频免费 | 亚洲一区二区三区久久久 | 色欧美综合 | 九九久久精品视频 | 亚洲国产成人av | 久久久久久成人 | 国产情侣在线看 | 日韩性在线 | 日韩视频一区 | 综合久久久 | 天天干视频网 | 91视频网址 | 日韩在线小视频 | 精品视频一区二区三区在线观看 | 久久精品小视频 | 欧美 日韩 视频 | 秋霞电影一区二区三区 | 国产精品视频免费观看 | 亚洲精品三级 | 伊人av在线播放 | 国产成人免费网站 | 96久久久久久 | 欧美一区二区 |