您的位置:首页 > 其它

《疯狂安卓讲义》P180 -- 选项菜单和子菜单

2018-03-12 15:47 239 查看
public class MainActivity extends Activity{    //定义"字体大小"菜单项的标识    final int FONT_10 = 0x111;    final int FONT_12 = 0x112;    final int FONT_14 = 0x113;    final int FONT_16 = 0x114;    final int FONT_18 =0x115;    //定义"普通菜单项"的标识    final int PLAIN_ITEM = 0x11b;    //定义"字体颜色"菜单项的标识    final int FONT_RED = 0x116;    final int FONT_BLUE = 0x117;    final int FONT_GREEN = 0x118;    private EditText edit;    @Override    public void onCreate(Bundle savedInstanceState)    {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        edit = (EditText) findViewById(R.id.txt);    }    //当用户单击MENU键时触发该方法    @Override    public boolean onCreateOptionsMenu(Menu menu)    {        //-----------向menu中添加"字体大小"的子菜单-------------        SubMenu fontMenu = menu.addSubMenu("字体大小");        //设置菜单的图标        fontMenu.setIcon(R.drawable.font);        //设置菜单头的图标        fontMenu.setHeaderIcon(R.drawable.font);        //设置菜单头的标题        fontMenu.setHeaderTitle("选择字体大小");        fontMenu.add(0, FONT_10, 0, "10号字体");        fontMenu.add(0, FONT_12, 0, "12号字体");        fontMenu.add(0, FONT_14, 0, "14号字体");        fontMenu.add(0, FONT_16, 0, "16号字体");        fontMenu.add(0, FONT_18, 0, "18号字体");        //--------------向menu中添加"普通菜单项"----------------        menu.add(0, PLAIN_ITEM, 0, "普通菜单项");        //--------------向menu中添加"字体颜色"的子菜单-----------        SubMenu colorMenu = menu.addSubMenu("字体颜色");        colorMenu.setIcon(R.drawable.color);        //设置菜单头的图标        colorMenu.setHeaderIcon(R.drawable.color);        //设置菜单头的标题        colorMenu.setHeaderTitle("选择文字颜色");        colorMenu.add(0, FONT_RED, 0, "红色");        colorMenu.add(0, FONT_GREEN, 0, "绿色");        colorMenu.add(0, FONT_BLUE, 0, "蓝色");        return super.onCreateOptionsMenu(menu);    }    @Override    //选项菜单的菜单项被单击后的回调方法    public boolean onOptionsItemSelected(MenuItem mi)    {        //判断单击的是哪个菜单项,并有针对性地做出响应        switch (mi.getItemId())        {            case FONT_10:                edit.setTextSize(10 * 2);                break;            case FONT_12:                edit.setTextSize(12 * 2);                break;            case FONT_14:                edit.setTextSize(14 * 2);                break;            case FONT_16:                edit.setTextSize(16 * 2);                break;            case FONT_18:                edit.setTextSize(18 * 2);                break;            case FONT_RED:                edit.setTextColor(Color.RED);                break;            case FONT_GREEN:                edit.setTextColor(Color.GREEN);                break;            case FONT_BLUE:                edit.setTextColor(Color.BLUE);                break;            case PLAIN_ITEM:                Toast toast = Toast.makeText(MainActivity.this                        , "您单击了普通菜单项", Toast.LENGTH_SHORT);                toast.show();                break;        }        return true;    }}
<?xml version="1.0" encoding="utf-8"?><!--定义一个线性布局容器--><EditText xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    tools:context=".MainActivity"    android:id="@+id/txt"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="match_parent"></EditText>
                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  安卓开发
相关文章推荐