Нажатие на форму xamarin не вход - PullRequest
0 голосов
/ 16 октября 2019

У меня есть форма Xamarin для Android (страница содержимого), и я хочу, чтобы пользователь нажимал определенную клавиатуру для выполнения определенного действия, например, вызова метода. Я не могу нигде найти решение этой проблемы. Если кто-то знает, как это сделать, я буду очень признателен за его / ее помощь.

Спасибо

1 Ответ

0 голосов
/ 16 октября 2019

Попробуйте переопределить DispatchKeyEvent в ваших MainActivity

    public override bool DispatchKeyEvent(KeyEvent e)
    {
        // if the Keycode is A .. there's lots of these
        //you'll have to checkout the Keycode class for more options
        //this example will fire the following code when 'A' is pressed
        if (e.KeyCode == Keycode.A)
        {
            //invoke your method here
        } 

        //return base if needed, otherwise keystrokes won't get automatically passed into textboxes etc and stuff will act wacky
        return base.DispatchKeyEvent(e);
    }

https://docs.microsoft.com/en-us/dotnet/api/android.app.activity.dispatchkeyevent?view=xamarin-android-sdk-9

, если это не работает, вы также можете переопределить OnKeyDown и OnKeyUp и OnKey AFAIK

Разница между методами onKey (), OnKeyDown () и dispatchKeyEvent (), предоставляемыми Android?

...