您的位置:首页 > 移动开发 > Android开发

Android开发手记(12) Menu的使用

2015-10-20 19:25 357 查看
  Android中的Menu分为三种,分别为:OptionsMenu(选项菜单)、ContextMenu(上下文菜单)、SubMenu(子菜单)。

1、OptionsMenu

  按Menu键就会显示,用于当前的Activity。
  在Activity里面,一般通过以下函数来使用options menu:
Activity::onCreateOptionsMenu (Menu menu) 创建options menu,这个函数只会在menu第一次显示时调用。
Activity::onPrepareOptionsMenu (Menu menu) 更新改变options menu的内容,这个函数会在menu每次显示时调用。
Activity::onOptionsItemSelected (MenuItem item) 处理选中的菜单项。

//menu.add(groupId, itemId, order, title); 通过add()增加menuItem,每个menuItem有groupId,itemId,Order。这三个属性是相互独立,没有关联。
MenuItem redMenu = menu.add(MENU_GROUP_1, 0, 0, "Red");
MenuItem OrangedMenu = menu.add(MENU_GROUP_1, 1, 1, "Orange");
MenuItem YellowMenu = menu.add(MENU_GROUP_2, 2, 2, "Yellow");
MenuItem GreenMenu = menu.add(MENU_GROUP_2, 3, 3, "Green");
MenuItem BlueMenu = menu.add(MENU_GROUP_2, 4, 4, "Blue");
MenuItem CyangonMenu = menu.add(MENU_GROUP_3, 5, 5, "Cyangon");
MenuItem PurpleMenu = menu.add(MENU_GROUP_3, 6, 6, "Purple");


menu.setGroupCheckable(MENU_GROUP_2, true /*isCheckable*/, false);//第三个参数true为单选,false为多选
menu.setGroupEnabled(MENU_GROUP_2, true/*isEnabled*/);
menu.setGroupVisible(MENU_GROUP_2, true/*isVisible*/);
menu.setGroupCheckable(MENU_GROUP_3, true, true);


完整代码如下:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.View;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

private TextView colorText;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

colorText = (TextView)findViewById(R.id.textView);
registerForContextMenu(colorText);
}

@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);

getMenuInflater().inflate(R.menu.menu_main, menu);
}

}


MainActivity.java
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: