【问题标题】:Xamarin.Forms Entry Focus when Unfocused未聚焦时的 Xamarin.Forms 条目焦点
【发布时间】:2016-06-23 02:58:55
【问题描述】:

我需要它,以便当条目失去焦点时,焦点返回到条目(因此将焦点锁定在条目上)。

我做了以下代码:

myEntry.Unfocused += (object sender, FocusEventArgs e) => {
    if (!e.IsFocused)
    {
        ((Entry)sender).Focus();
    }
};

它可以工作,但键盘停止工作 - 我不能写任何东西。

这是一个错误吗?有人可以帮我吗?

【问题讨论】:

  • 你想通过锁定焦点来完成什么?可能还有其他方法可以实现这一点。另外,您在哪个平台上遇到键盘问题?
  • 我在带有 USB 条形码阅读器的 android 平板电脑上使用,有时用户点击退出,这会停止工作流程。我在这个屏幕上使用了好几个小时。
  • 我需要与 pin 输入相同的功能,这是强制性的。我建议您使用其他选项使键盘不可关闭。

标签: xamarin xamarin.forms


【解决方案1】:

我发现这是 xamarin.forms 2.0.0.0 的一个错误。更新并解决了问题。

【讨论】:

    【解决方案2】:

    我知道在android上如果你点击Entry并给它焦点,键盘会出现,然后如果你点击另一个元素,Entry会失去焦点,键盘会消失。因此,当 Entry 失去焦点时重新聚焦它,您可能会强制将键盘最小化。不过,这只是一个猜测。

    您可以做的是将最父元素的InputTransparent 属性设置为true,然后仅将Entry.InputTransparent 属性设置为false,这样用户就无法单击除@987654328 之外的任何内容@。

    如果这不起作用,那么您也可以尝试添加一个透明的ContentView,覆盖除Entry 之外的所有内容,并将ContentView.InputTransparent 设置为true,这将具有相同的效果。

    【讨论】:

    • 感谢您的回答。键盘没有消失。只是不要输入任何内容。您的建议无效。
    • 我发现这是xamarin.forms 2.0.0.0的一个bug。更新并解决了问题。
    猜你喜欢
    • 2015-09-19
    • 2021-11-16
    • 1970-01-01
    • 2019-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    相关资源
    最近更新 更多