我正在用Xamarin.Android编写一个安卓应用程序。我必须检测硬件键盘按钮(因为我的目标设备是一个翻盖手机),但我不知道如何用Xamarin实现。
在java中,它是这样的:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch(keyCode)
{
case KeyEvent.KEYCODE_VOLUME_UP:
Toast.makeText(this, "Volume Up pressed", Toast.LENGTH_SHORT).show();
return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
Toast.makeText(this, "Volume Down pressed", Toast.LENGTH_SHORT).show();
return true;
}
return super.onKeyDown(keyCode, event);
}
有没有检测/截取键盘按钮的方法?请给我一些代码示例?
谢谢大家!
编辑
我正在寻找能让我访问键盘上每一个硬件按钮(1,2,3,4,5,6,7,8,9,0,#,*,调用btn,endCall btn等)的东西。
二次编辑
发现什么可能是problem...the代码工作得很好,但是由于我的应用程序是一个启动程序,当我按下拨号程序启动的数字键时,你知道如何将拨号重定向到我创建的活动吗?
发布于 2015-12-18 09:58:49
这是我在android设备上拦截numpad密钥的最后一个解决方案。我希望这能对未来的其他人有所帮助。
[Activity(Label = "PhoneTask", LaunchMode = Android.Content.PM.LaunchMode.SingleTop)]
[IntentFilter(new[] { Intent.ActionDial, Intent.ActionCallButton, Intent.ActionView },
Categories = new[] { Intent.CategoryDefault },
DataScheme = "tel")]
刚在我的活动类上面添加了这段代码,现在,当我在laucher应用程序上按下这些按钮时,我被重定向到我的活动。
https://stackoverflow.com/questions/34131582
复制相似问题