【移動應用開發(fā)技術】Android仿微信菜單使用C#和Java分別實現(xiàn)的案例_第1頁
【移動應用開發(fā)技術】Android仿微信菜單使用C#和Java分別實現(xiàn)的案例_第2頁
【移動應用開發(fā)技術】Android仿微信菜單使用C#和Java分別實現(xiàn)的案例_第3頁
【移動應用開發(fā)技術】Android仿微信菜單使用C#和Java分別實現(xiàn)的案例_第4頁
【移動應用開發(fā)技術】Android仿微信菜單使用C#和Java分別實現(xiàn)的案例_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

【移動應用開發(fā)技術】Android仿微信菜單使用C#和Java分別實現(xiàn)的案例

在下給大家分享一下Android仿微信菜單使用C#和Java分別實現(xiàn)的案例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!本篇是對安卓菜單使用編程方式實現(xiàn),當然可以使用XML的方式完成同樣的功能,基本Java和C#寫法都是一致的,所以使用XML的方式在本篇中使用Java演示,需要注意的是,對于如果不是VS開發(fā)的話,那么資源文件名稱必須以小寫開頭,否則會報錯。運行效果C#實現(xiàn)using

Android.App;

using

Android.OS;

using

Android.Views;

using

Android.Widget;

namespace

MenuDemo

{

[Activity(Label

=

"@string/ApplicationName",

MainLauncher

=

true,

Icon

=

"@drawable/Icon")]

public

class

MainActivity

:

Activity

{

protected

override

void

OnCreate(Bundle

bundle)

{

base.OnCreate(bundle);

SetContentView(Resource.Layout.Main);

var

iv

=

FindViewById<ImageView>(Resource.Id.iv);

iv.SetImageResource(Resource.Drawable.test);

RegisterForContextMenu(iv);

}

//與一個活動關聯(lián)

public

override

bool

OnCreateOptionsMenu(IMenu

menu)

{

base.OnCreateOptionsMenu(menu);

const

int

menuItemId

=

Menu.First;

const

int

menuItemOrder

=

Menu.None;

const

int

munuItemText

=

Resource.String.menuItem1;

/*

*

第一個參數(shù):組值

*

第二個參數(shù):菜單唯一標示

*

第三個參數(shù):順序參數(shù)

*

第四個參數(shù):文本

*/

menu.Add(1,

menuItemId,

menuItemOrder,

munuItemText);

menu.Add(2,

menuItemId

+

10,

menuItemOrder

+

1,

"菜單2");

menu.Add(2,

menuItemId

+

20,

menuItemOrder

+

2,

"菜單3"

);

var

subMenu

=

menu.AddSubMenu(0,

menuItemId

+

30,

menuItemOrder

+

3,

"子菜單"

);

subMenu.SetHeaderIcon(Resource.Drawable.more);

var

subMenuItem1

=

subMenu.Add(0,

menuItemId

+

40,

menuItemOrder

+

4,"子菜單-1"

);

subMenuItem1.SetIcon(Resource.Drawable.more);

var

subMenuItem2

=

subMenu.Add(0,

menuItemId

+

50,

menuItemOrder

+

5,"子菜單-2"

).SetCheckable(true);

subMenuItem2.SetIcon(Resource.Drawable.blue);

subMenu.Add(0,

menuItemId

+

60,

menuItemOrder

+

6,

"子菜單-3"

).SetCheckable(true);

return

true;

}

public

override

bool

OnOptionsItemSelected(IMenuItem

item)

{

Toast.MakeText(this,

"當前菜單編號"

+

item.ItemId,

ToastLength.Long).Show();

return

base.OnOptionsItemSelected(item);

}

public

override

void

OnCreateContextMenu(IContextMenu

menu,

View

v,

IContextMenuContextMenuInfo

menuInfo)

{

base.OnCreateContextMenu(menu,

v,

menuInfo);

menu.SetHeaderTitle("上下文菜單");

menu.SetHeaderIcon(Resource.Drawable.blue);

menu.Add(0,

Menu.First,

Menu.None,

"菜單1");

menu.Add(0,

Menu.First+1,Menu.None,

"菜單2").SetShortcut('2','B');

menu.Add(0,

Menu.First

+

2,

Menu.None,

"菜單3");

var

subMenu

=

menu.AddSubMenu("子菜單");

subMenu.Add("子菜單選項");

}

}

}Layout<?xml

version="1.0"

encoding="utf-8"?>

<LinearLayout

xmlns:android="/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:minWidth="25px"

android:minHeight="25px">

<ImageView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:id="@+id/iv"

/>

</LinearLayout>運行效果Java實現(xiàn)package

com.example.halower.menudemo;

import

android.app.Activity;

import

android.os.Bundle;

import

android.view.ContextMenu;

import

android.view.MenuInflater;

import

android.view.View;

import

android.widget.ImageView;

public

class

MainActivity

extends

Activity

{

@Override

protected

void

onCreate(Bundle

savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

ImageView

iv=(ImageView)findViewById(R.id.iamgeView);

iv.setImageResource(R.drawable.test);

registerForContextMenu(iv);

}

@Override

public

void

onCreateContextMenu(ContextMenu

menu,

View

v,

ContextMenu.ContextMenuInfo

menuInfo)

{

super.onCreateContextMenu(menu,

v,

menuInfo);

MenuInflater

inflater=new

MenuInflater(this);

inflater.inflate(R.menu.menu_main,menu);

menu.setHeaderIcon(R.drawable.blue);

menu.setHeaderTitle(R.string.menuTitle);

}

}Layout<?xml

version="1.0"

encoding="utf-8"?>

<resources>

<string

name="app_name">MenuDemo</string>

<string

name="action_settings">Settings</string>

<string

name="item1Name"

>菜單1</string>

<string

name="item2Name"

>菜單2</string>

<string

name="

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論