【发布时间】:2013-08-28 06:58:54
【问题描述】:
当我长按菜单按钮时,手机在振动。如何将长按菜单键连接到某些操作。例如,更改MyLang() 方法。这样可以吗?
【问题讨论】:
标签: android button menu long-press
当我长按菜单按钮时,手机在振动。如何将长按菜单键连接到某些操作。例如,更改MyLang() 方法。这样可以吗?
【问题讨论】:
标签: android button menu long-press
默认情况下,ActionBar 项目在工具提示中显示title 属性。您不能覆盖此功能。但是,您可以创建一个自定义 ActionProvider,您可以在 it 上设置一个 View.OnLongClickListener。
查看“ApiDemo”ActionBarSettingsActionProviderActivity。 (link) 以此为起点,ActionProvider 的 onCreateActionView 看起来像这样:
@Override
public View onCreateActionView() {
LayoutInflater layoutInflater = LayoutInflater.from(mContext);
View view = layoutInflater.inflate(R.layout.action_bar_custom_action_provider, null);
ImageButton button = (ImageButton) view.findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Respond to normal click
}
});
button.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
// Respond to long-click
return true;
}
}
return view;
}
编辑:
如果您正在谈论覆盖硬件菜单按钮,您可以这样做,但只能在您的应用中进行。有关如何挂钩关键事件的 sn-ps,请参阅here。
【讨论】:
Menu 按钮。