xamarin.android - OnKeyLongPress不会触发

时间:2017-09-19 11:11:00

标签: c# android xamarin mvvm xamarin.forms

我想在音量按钮上使用OnKeyLongPress,以覆盖系统音量控制。

我正在尝试使用OnKeyLongPress事件监听器,但它无法正常工作。

这是我的代码:

public override bool OnKeyLongPress(Keycode keyCode, KeyEvent e)
{
    if (keyCode == Keycode.VolumeDown)
    {

        return true;
    }

    if (keyCode == Keycode.VolumeUp )
    {

        return true;
    }


    return base.OnKeyLongPress(keyCode, e);
}

1 个答案:

答案 0 :(得分:2)

你快到了。您需要在onKeyPress处理程序中检测相同的键事件并开始跟踪它,以便长按可以工作。这是您需要的代码:

public override bool OnKeyDown(Keycode keyCode, KeyEvent e)
{
    if (keyCode == Keycode.VolumeDown)
    {
        return true;
    }
    if (keyCode == Keycode.VolumeUp )
    {
        return true;
    }
    return base.OnKeyDown(keyCode, e);
}