【问题标题】:Xamarin.Forms display soft keyboard when Entry gets focusXamarin.Forms 在 Entry 获得焦点时显示软键盘
【发布时间】:2017-10-23 13:19:46
【问题描述】:

我有一个跨平台 Xamarin.Forms 应用程序,当我想将焦点设置在 Entry 上并在加载页面时显示软键盘。这适用于 iOS,但不适用于 Android。我只是使用下面的代码:

    protected override void OnAppearing()
    {

        pinCode.Focus();

        base.OnAppearing();
    }

【问题讨论】:

    标签: keyboard xamarin.forms


    【解决方案1】:

    对此有一些技巧:

    1.- 使用 Task.Delay(500);在Focus() 调用之前。

    2.- 在页面的构造函数中使用pinCode.Focus();

    正常的做法是使用依赖服务强制显示软键盘。

    这通常意味着您的应用可能存在线程阻塞问题。

    【讨论】:

    • 如果我放入构造函数而不是 OnAppearing,则根本不关注。谢谢
    • 所以对我来说,我开始工作的方式是将这两行放在 OnAppearing 事件中,然后再调用 base.OnAppearing() 并将它们按以下顺序排列:await Task.Delay(500 ); myControl.Focus();
    【解决方案2】:

    在页面的构造函数中添加以下行

    出现 += (object sender, EventArgs e) => pinCode.Focus();

    这对我有用!

    【讨论】:

    • 这和上面提到的一样。顺便说一句,它也适用于我(虽然只在模拟器上测试过),但是放入构造函数不起作用。
    猜你喜欢
    • 2019-04-28
    • 2016-05-20
    • 2011-11-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 2023-04-03
    • 1970-01-01
    • 2022-06-28
    相关资源
    最近更新 更多