【问题标题】:KeyboardView is deprecated in androidKeyboardView 在 android 中已弃用
【发布时间】:2020-02-20 09:36:03
【问题描述】:

KeyboardView 已被 android 团队在 API 级别 29 中正式弃用,我无法找到替代方法。请告诉我是否有其他选择?

【问题讨论】:

  • 有什么更新吗?这似乎是解决这个问题的唯一问题......
  • github.com/hijamoya/KeyboardView,你可以试试我的图书馆,我只是复制。

标签: android


【解决方案1】:

Google 建议的唯一解决方案是将 KeyboardView.javaKeyboard.java 文件从 Android AOSP 复制到您的本地项目。通过一些自定义,我设法让它像旧的弃用 KeyboardViewKeyboard Android 的类一样工作。

您还将拥有来自from herecom.android.internal.R 属性(可样式化)的本地副本

你可以注意到,它被注释为

<!-- {@deprecated Copy this definition into your own application project.} -->

谷歌:

API 级别 29 已弃用此类。此类已弃用 因为这只是应用程序的一个方便的 UI 小部件类 开发人员可以在现有的公共 API 之上重新实现。如果你 已经依赖这个类,考虑复制 从 AOSP 实施到您的项目或重新实施 自己做的类似小部件

【讨论】:

  • Keyboard.java 有 deprecated 注释 -.- 这是正确的 link
  • @isthemartin 是的,正如我在回答中所说,您应该复制已弃用的类并进行细微更改。其中一项更改是删除不推荐使用的注释。课程本身运作良好。这是谷歌建议的
  • 是对的,所以我还有一个问题: com.android.internal.R 会发生什么?似乎在我的项目中找不到
  • 按照您的回答,我遇到了“错误膨胀类 com.android.urdu.KeyboardView”的错误。为什么我会收到此错误?
  • 请看这里stackoverflow.com/q/66239268/12050970。我正面临这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-21
  • 2012-12-25
  • 2021-08-31
  • 2015-09-18
  • 2018-02-11
  • 2018-03-10
  • 1970-01-01
相关资源
最近更新 更多