菜单longpress上的Toast显示在错误的位置 - android

时间:2012-09-27 14:24:11

标签: android split optionmenu contextual-action-bar

我有上下文菜单 - ICS 4.0.4在底部显示菜单选项。 长按显示Toast,文本设置为菜单标题。 问题是,显示的烤面包显示在顶部,而它应显示在菜单选项的正上方。

以下是代码:

在清单文件中:

    <activity
        android:name=".SampleMenuActivityActivity"
        android:label="@string/app_name"
        android:uiOptions="splitActionBarWhenNarrow" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

在菜单文件中:

<item android:id="@+id/id1"
    android:title="Title!"
    android:icon="@drawable/ic_launcher"
    android:orderInCategory="0"
    android:showAsAction="ifRoom|withText" />

活动:

 @Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.trial_option, menu);
    return true;
}
我错过了什么?

提前完成。

1 个答案:

答案 0 :(得分:0)

如果长按动作栏项目,如果项目标题不可见,您将无法在项目上方获得“吐司”,并且您无法修改或更改此吐司。但是如果你想改变吐司的位置,还有一种替代解决方案:

- 首先你需要隐藏顶级吐司。而不是android:showAsAction="ifRoom|withText"使用android:showAsAction="withText",但会显示该项目的标题。

- 您需要长按此项目。我找到了一个解决方案here