在Android中,我创建了一个操作栏并添加了一些菜单项。当我点击菜单项时,会执行一些操作。
在长按时,我会发现一个空的toast消息。我的问题是如何禁用长按时的toast?
在长按时,我会发现一个空的toast消息。我的问题是如何禁用长按时的toast?
不要试图禁用空的“toast-like”视图,而是可以添加“android:title”属性来描述操作的实际作用。
例如:
<item android:id="@+id/action_websearch"
android:icon="@drawable/action_search"
android:title="@string/action_websearch"
android:showAsAction="ifRoom|withText" />
在 menu_add_key 布局中引用自定义布局:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tumblr="http://schemas.android.com/apk/res-auto" >
<item
android:id="@+id/menuAddKey"
android:actionLayout="@layout/item_addkey"
android:showAsAction="always"
android:title=""/>
</menu>
将您的 item_addkey 布局定义为您想要的样式
在Java代码中:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_add_key, menu);
menu.findItem(R.id.menuAddKey).getActionView().setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
showAddKeyDialog("");
}
});
return true;
}
禁用菜单项的长按功能:
menu.findItem(R.id.menuAddKey).getActionView() return null