当前位置:首页 » 安卓系统 » androidmenu文字

androidmenu文字

发布时间: 2023-12-23 14:12:13

1. android menu item的字体样式和背景颜色怎么自定义

android旋钮背景颜色 android按钮背景颜色 默认情况下,Button使用android系统提供的默认背景。因此在不同平台上或者设备上,button显示的风格也不相同。android支持修改button默认的显示风格,可通过Drawable状态列表替换默认的背景

2. android menu怎样设置item的文字

Android Menu的文字有两种设置方式:

  1. 在 menu.xml中设置。

  2. java代码onCreateOptionsMenu中设置。

以下为示例代码:

  1. 在menu.xml中指定title即可

    <item android:id="@+id/menu"
    android:title="文字"/>

  2. 重载onCreateOptionsMenu(Menu menu)方法,并调用API。

    menu.add((int groupId, int itemId, int order, charsequence title) .setIcon(drawable ID)

add()方法的四个参数,依次是:

1、组别,如果不分组的话就写Menu.NONE。

2、Id,这个很重要,Android根据这个Id来确定不同的菜单 。

3、顺序,哪个菜单项在前面由这个参数的大小决定 。

4、文本,菜单项的显示文本。

3. android menu 有什么用

android 中的menu一般是指上下文菜单或者是选项菜单 其中上选项菜单是可以在布局中res下的menu中在xml布局中写好布局来的然后通过java代码中的onCreateOptionsMenu来加载选项菜单,android4.4高级版本后是自动把菜单加载到标题栏上的,而不是低版本的按下menu键才显是出来的,上下文菜单是是通过onCreateContextMenu这个方法来注册上下文菜单的 下面讲讲如何获取menu中的item 获取上下文菜单的item其实就是当单机选项菜单时会触发这个方法 public boolean onContextItemSelected(MenuItem mi){ //判断单击的是哪个菜单项,并针对性的作出响应。 switch (mi.getItemId()){ case FONT_RED: title.setTextColor(Color.RED); break; case FONT_GREEN: title.setTextColor(Color.GREEN); break; case FONT_BLUE: title.setTextColor(Color.BLUE); break; case MENU1: createdialog(); break; } return true; }获取选项菜单的item其实就是当单击选项菜单时会触发这个方法 public boolean onMenuItemSelected(int featureId, MenuItem item) { // 利用switch根据ItemId区分点击的是哪个菜单 以便正确响应用户操作 MenuItem temp= item; switch (item.getItemId()) { case R.id.rename: createdialog(); break; case R.id.red: title.setTextColor(Color.RED); break; case R.id.green: title.setTextColor(Color.GREEN); break; case R.id.blue: title.setTextColor(Color.BLUE); break; // case R.id.choose_color: // createpopupmenu(temp); // break; } return super.onMenuItemSelected(featureId, item); }

4. android中怎样控制popupmenu字体的大小

通过设置popupMenu的xml布局文件,可以使用android:width,里面设置合适的尺寸以适配手机型号,建议使用android:width=“wrap_content".
android 中尺寸的设置几种形式,可以是wrap_content/fill_parent/还可以是具体的数值,不如13dp。

5. android中的菜单menu可以在屏幕上一直显示吗

不可以,menu是需要触发了menu这个按键才会显示出来。

菜单是用户界面中最常见的元素之一,使用非常频繁,在Android中,菜单被分为如下三种,选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu),以下说的是创建OptionsMenu

一、概述

public boolean onCreateOptionsMenu(Menu menu):使用此方法调用OptionsMenu。

public boolean onOptionsItemSelected(MenuItem item):选中菜单项后发生的动作。

public void onOptionsMenuClosed(Menu menu):菜单关闭后发生的动作。

public boolean onPrepareOptionsMenu(Menu menu):选项菜单显示之前onPrepareOptionsMenu方法会被调用,你可以用此方法来根据打当时的情况调整菜单。

public boolean onMenuOpened(int featureId, Menu menu):单打开后发生的动作。

二、默认样式

默认样式是在屏幕底部弹出一个菜单,这个菜单我们就叫他选项菜单OptionsMenu,一般情况下,选项菜单最多显示2排每排3个菜单项,这些菜单项有文字有图标,也被称作Icon Menus,如果多于6项,从第六项开始会被隐藏,在第六项会出现一个More里,点击More才出现第六项以及以后的菜单项,这些菜单项也被称作Expanded Menus。下面介绍。

1.main.xml

<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"android:layout_width="fill_parent"
android:layout_height="fill_parent">

<TextViewandroid:layout_width="wrap_content"
android:layout_height="wrap_content"android:text="请点击Menu键显示选项菜单"
android:id="@+id/TextView02"/>

</LinearLayout>


2。重载onCreateOptionsMenu(Menu menu)方法

重载onCreateOptionsMenu(Menu menu)方法,并在此方法中添加菜单项,最后返回true,如果false,菜单则不会显示。

(Menumenu)

@Override
(Menumenu){
/*
*
*add()方法的四个参数,依次是:
*
*1、组别,如果不分组的话就写Menu.NONE,
*
*2、Id,这个很重要,Android根据这个Id来确定不同的菜单
*
*3、顺序,那个菜单现在在前面由这个参数的大小决定
*
*4、文本,菜单的显示文本
*/

menu.add(Menu.NONE,Menu.FIRST+1,5,"删除").setIcon(

android.R.drawable.ic_menu_delete);

//setIcon()方法为菜单设置图标,这里使用的是系统自带的图标,同学们留意一下,以

//android.R开头的资源是系统提供的,我们自己提供的资源是以R开头的

menu.add(Menu.NONE,Menu.FIRST+2,2,"保存").setIcon(

android.R.drawable.ic_menu_edit);

menu.add(Menu.NONE,Menu.FIRST+3,6,"帮助").setIcon(

android.R.drawable.ic_menu_help);

menu.add(Menu.NONE,Menu.FIRST+4,1,"添加").setIcon(

android.R.drawable.ic_menu_add);

menu.add(Menu.NONE,Menu.FIRST+5,4,"详细").setIcon(

android.R.drawable.ic_menu_info_details);

menu.add(Menu.NONE,Menu.FIRST+6,3,"发送").setIcon(

android.R.drawable.ic_menu_send);

returntrue;

}

3。为菜单项注册事件

使用onOptionsItemSelected(MenuItem item)方法为菜单项注册事件

(MenuItemitem)

@Override
(MenuItemitem){
switch(item.getItemId()){

caseMenu.FIRST+1:

Toast.makeText(this,"删除菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+2:

Toast.makeText(this,"保存菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+3:

Toast.makeText(this,"帮助菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+4:

Toast.makeText(this,"添加菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+5:

Toast.makeText(this,"详细菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+6:

Toast.makeText(this,"发送菜单被点击了",Toast.LENGTH_LONG).show();

break;

}

returnfalse;

}

4.完整代码

packagecom.android.menu;

importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.widget.Toast;

{
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}

@Override
(Menumenu){
/*
*
*add()方法的四个参数,依次是:
*
*1、组别,如果不分组的话就写Menu.NONE,
*
*2、Id,这个很重要,Android根据这个Id来确定不同的菜单
*
*3、顺序,那个菜单现在在前面由这个参数的大小决定
*
*4、文本,菜单的显示文本
*/

menu.add(Menu.NONE,Menu.FIRST+1,5,"删除").setIcon(

android.R.drawable.ic_menu_delete);

//setIcon()方法为菜单设置图标,这里使用的是系统自带的图标,同学们留意一下,以

//android.R开头的资源是系统提供的,我们自己提供的资源是以R开头的

menu.add(Menu.NONE,Menu.FIRST+2,2,"保存").setIcon(

android.R.drawable.ic_menu_edit);

menu.add(Menu.NONE,Menu.FIRST+3,6,"帮助").setIcon(

android.R.drawable.ic_menu_help);

menu.add(Menu.NONE,Menu.FIRST+4,1,"添加").setIcon(

android.R.drawable.ic_menu_add);

menu.add(Menu.NONE,Menu.FIRST+5,4,"详细").setIcon(

android.R.drawable.ic_menu_info_details);

menu.add(Menu.NONE,Menu.FIRST+6,3,"发送").setIcon(

android.R.drawable.ic_menu_send);

returntrue;

}

@Override
(MenuItemitem){
switch(item.getItemId()){

caseMenu.FIRST+1:

Toast.makeText(this,"删除菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+2:

Toast.makeText(this,"保存菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+3:

Toast.makeText(this,"帮助菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+4:

Toast.makeText(this,"添加菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+5:

Toast.makeText(this,"详细菜单被点击了",Toast.LENGTH_LONG).show();

break;

caseMenu.FIRST+6:

Toast.makeText(this,"发送菜单被点击了",Toast.LENGTH_LONG).show();

break;

}

returnfalse;

}

@Override
publicvoidonOptionsMenuClosed(Menumenu){
Toast.makeText(this,"选项菜单关闭了",Toast.LENGTH_LONG).show();
}

@Override
(Menumenu){
Toast.makeText(this,
"选项菜单显示之前onPrepareOptionsMenu方法会被调用,你可以用此方法来根据打当时的情况调整菜单",
Toast.LENGTH_LONG).show();

//如果返回false,此方法就把用户点击menu的动作给消费了,onCreateOptionsMenu方法将不会被调用

returntrue;

}
}

5.运行效果

6. android中menu可能需要重写的方法是哪些

可能需要重写的如下:
public boolean onCreateOptionsMenu(Menu menu)方法只被系统调用一次,如需要动态更改菜单内容还需重写onPrepareOptionsMenu(Menu menu)方法实现

[java] view plain
Menu m=null;
int count=0;

@Override
public boolean onPrepareOptionsMenu(Menu menu) {

if(count>0){
if(count%2==0){
menu.removeGroup(1);
}else{
menu.add(1, Menu.FIRST, 0, "5st");
menu.add(1, Menu.FIRST+1, 0, "6st");
}
}
count++;
return super.onPrepareOptionsMenu(menu);
}

2,context menu(长按屏幕产生)

[java] view plain
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 1:
Toast.makeText(this, "you select"+item.getItemId(), 500).show();
break;
case 2:
Toast.makeText(this, "you select"+item.getItemId(), 500).show();
break;
}
return super.onContextItemSelected(item);
}

@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menu.add(0, Menu.FIRST, 0, "1st");
menu.add(0, Menu.FIRST+1, 0, "2st");
super.onCreateContextMenu(menu, v, menuInfo);
}

热点内容
怎么用安卓手机查苹果的序列号 发布:2024-11-29 06:21:08 浏览:507
r11s原始密码是多少 发布:2024-11-29 05:52:20 浏览:79
c语言枚举法 发布:2024-11-29 05:50:58 浏览:125
大数据系统如何配置 发布:2024-11-29 05:48:44 浏览:89
连战访问西安小学 发布:2024-11-29 05:45:03 浏览:316
怎么编译原生安卓手机 发布:2024-11-29 05:44:28 浏览:193
java代码编译java文件 发布:2024-11-29 05:44:27 浏览:208
如何部署远程服务器 发布:2024-11-29 05:34:37 浏览:523
红米系统存储与手机存储 发布:2024-11-29 05:33:55 浏览:198
qt反编译工具 发布:2024-11-29 05:29:31 浏览:480