본 글은 주로 안드로이드 모방 위챗 메뉴(메뉴)(각각 C#과 Java로 구현)를 소개합니다. 이 글은 C#과 Java 버전 각각의 작동 효과와 구현 코드를 제공하고 있어 도움이 필요한 친구들이 참고할 수 있습니다. >
이 기사에서는 프로그래밍을 사용하여 Android 메뉴를 구현합니다. 물론 XML을 사용하여 동일한 기능을 완성할 수 있습니다. 기본 Java와 C# 작성 방법은 동일하므로 이 기사에서는 XML을 사용하여 Java를 사용하는 방법을 보여줍니다. 예, VS에서 개발되지 않은 경우 리소스 파일 이름은 소문자로 시작해야 합니다. 그렇지 않으면 오류가 보고됩니다.실행 효과
C# 구현
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); } //与一个活动关联 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; /* * 第一个参数:组值 * 第二个参数:菜单唯一标示 * 第三个参数:顺序参数 * 第四个参数:文本 */ 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("子菜单选项"); } } }
레이아웃rreee
실행 효과
Java 구현
아아아아
레이아웃아아아아아
위 내용은 C#과 Java를 각각 사용하여 구현한 Android 모방 WeChat 메뉴의 예를 공유하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!