繁体   English   中英

为什么DialogPreference.needInputMethod()隐藏?

[英]Why is DialogPreference.needInputMethod() hidden?

根据DialogPreference.java

返回显示对话框时首选项是否需要显示软输入法。 默认为false。 子类需要自动启动的软输入法时,应重写此方法。

但是,它具有@hide标记,并且在SDK中不可见。 尽管如此, DialogPreference子类仍然实现它:

我的问题:

  1. 为什么会有@hide
  2. 如果我扩展DialogPreference并希望显示软键盘,我应该实现它吗?

根据一般经验,不应该实现隐藏的API。 原因可能是该API正在开发中并且可能会更改,该API仅供内部使用,不稳定等。

在这种情况下,您对EditTextPreference.java类直接调用此方法是正确的,但是您不应该得出结论,这意味着其他子类也应该这样做。

实际上,如果检查将此方法添加到类的开发人员的提交消息,则会看到:

变更集:1d458570757e607f0dc11fb0e963017916ac0701

摘要:在EditTextPreferences对话框中自动显示键盘

用户:...

日期:2009年9月15日星期二19:25:51

因此,似乎该方法旨在供EditTextPreferences使用,而不供其他人使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM