在动态操作栏中添加行动项目 [英] Dynamically add action item in action bar

查看:163
本文介绍了在动态操作栏中添加行动项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想完全dinamically一些原因造成我在动作条操作菜单项。但是,当我从加code中的菜单项,它们被显示为设置菜单项溢出。

下面有我的code。任何解决办法?

  @覆盖
公共布尔onCreateOptionsMenu(功能菜单){
    //充气菜单;这增加了项目操作栏,如果它是present。
    //getMenuInflater().inflate(R.menu.start,菜单);

    菜单项logoutMI = menu.add(0,1,0,注销);
    logoutMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    logoutMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT);

    菜单项configMI = menu.add(0,2,1,配置);
    configMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    configMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT);

    返回true;
}
 

解决方案

我认为你需要或一起 setShowAsAction 的标志值。 从文档,<一个href="http://developer.android.com/reference/android/view/MenuItem.html#setShowAsAction(int)">http://developer.android.com/reference/android/view/MenuItem.html#setShowAsAction(int)

  

一个SHOW_AS_ACTION_ALWAYS,SHOW_AS_ACTION_IF_ROOM,或   SHOW_AS_ACTION_NEVER应使用,和您可以选择或将   值SHOW_AS_ACTION_WITH_TEXT。 SHOW_AS_ACTION_WITH_TEXT

例。

  logoutMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
 

让我知道如果这实际上固定你的问题。

I want to create my action menu items in the ActionBar totally dinamically for some reasons. But when I add the menu items from code, they are displayed as overflow of the setting menu item.

Below there is my code. any solution?

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    //getMenuInflater().inflate(R.menu.start, menu);

    MenuItem logoutMI= menu.add(0,1,0,"Logout");
    logoutMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    logoutMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT);

    MenuItem configMI= menu.add(0,2,1,"Configuration");
    configMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    configMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT);

    return true;
}

解决方案

I think you need to OR those flag values together on setShowAsAction. From the docs, http://developer.android.com/reference/android/view/MenuItem.html#setShowAsAction(int)

One of SHOW_AS_ACTION_ALWAYS, SHOW_AS_ACTION_IF_ROOM, or SHOW_AS_ACTION_NEVER should be used, and you may optionally OR the value with SHOW_AS_ACTION_WITH_TEXT. SHOW_AS_ACTION_WITH_TEXT

Ex.

 logoutMI.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT);

Let me know if this actually fixed your problem.

这篇关于在动态操作栏中添加行动项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆