为什么在某些应用中未显示的键盘“Word建议”? -- keyboard 领域 android 相关 的问题

Why are “word suggestions” of keyboards not shown in some apps?


简体版||繁體版
4
vote

问题

中文

我在姜饼上使用黑客和swiftkey x键盘。建议系列在键盘上方的大多数应用程序中显示。但是,在Android Market(现在播放商店)或DroidEdit(代码编辑器)中打开键盘时,我使用的任何键盘都没有显示该建议。

是什么决定了这种行为?如何打开/力暗示单词?

english

I'm using Hacker's and SwiftKey X keyboard on GingerBread. Suggestion line is shown in most apps above the keyboard. But when opening the keyboard in Android Market (now Play Store) or DroidEdit (code editor), the suggestions aren't shown for any keyboard I use.

What determines this behaviour? How can I switch on/force suggesting words?

  

回答列表

7
 
vote
vote
最佳答案
 

最有可能选择不向该特定输入框显示它们。从技术角度来看,这是由 TextView 对象上的标志控制,该对象表示文本区域控件(例如 TYPE_TEXT_FLAG_NO_SUGGESTIONS 选项)。如果应用程序选择禁用它,我不相信有任何方法可以覆盖此设置。

很重要的是要注意它有点单向街道。默认情况下,所有文本区域都会启用建议,但会遵守全局设置,因此应用程序无法以任何方式强制启用建议。如果您有全局设置关闭,他们无处不在。

开发人员文档提供允许应用程序强制禁用建议的逻辑是,在某些情况下,它们根本不太有用。具体的相关报价是(来自上述链接):

...这对不包含语言的单词的文本视图非常有用,并且不会从任何基于字典的完成或更正的文字中受益...

我正在下注市场禁用它们,因为应用程序名称和这些没有义务成为字典单词,所以建议尝试经常证明相当徒劳无功。我也会理解你的第二个例子也是如此,它听起来像源代码编辑器(我认为这就是你的意思是"语法突出显示" )。它是一种类似于Visual Studio在源代码中的错头击败词语 - 它提供了没有任何好处,因为大多数文本不是字典单词。

 

Most likely the app has chosen not to show them for that particular input box. From a technical perspective, this is controlled by flags on the TextView object that represents the text area control (e.g. the TYPE_TEXT_FLAG_NO_SUGGESTIONS option). I don't believe there is any way to override this setting if the app chooses to disable it.

It's probably also important to note that it's a bit of a one-way street. Suggestions are enabled by default on all text areas, but will obey the global setting, so an app can't forcibly enable suggestions in any way. If you have the global setting turned off, they're off everywhere.

The logic that the developer documentation provides for allowing apps to forcibly disable suggestions is that in some cases they simply aren't very useful. The specific relevant quote would be (from the above link):

... This is useful for text views that do not contain words from the language and do not benefit from any dictionary-based completions or corrections ...

I'd wager the Market disables them because app names and such have no obligation to be dictionary words, so suggestion attempts would often prove rather futile. I would also understand the same being true of your second example, which sounds like a source code editor (I assume that's what you mean by "syntax highlighting"). It would be sort of akin to Visual Studio underlining misspelt words in source code - it provides no benefit since most of the text will not be dictionary words.

 
 
     
     

相关问题

2  那么,什么类型的过程是Android键盘?  ( So what type of process is android keyboard ) 
我最近在我的(现在非常旧的)LG Optimus 2x上安装了CyanogenMod 11。经过一些调整后,我设法使其比原始ROM更快速,其中一个主要的东西设置内置的 Minfree TaskKiller 预设为 accorstrive 。 这创建了一个大问题 - 但是 - 使用一些内存饥饿的应用程序(如Viber和...

6  如何禁用设备键盘上的标点符号的令人讨厌的自动校正?  ( How do i disable the annoying auto correction of punctuation on device keyboard ) 
以下是两个示例:(我正在使用' | '作为游标) 示例#1: I want to put the next word in quotes | 类型' " '后跟一个单词和结束quote: I want to put the next word in quotes" | I want to put the...

0  如何在我的Android平板电脑上打开键盘?  ( How can i open the keyboard on my android tablet ) 
我刚买了Natpc M009s终极电容Android Tablet PC Android 4.0 IC,我无法找到访问键盘的任何方法。 如何打开它? ...

1  如何在Termux上键入“Control”?  ( How to type control on termux ) 
有一个很好的应用程序"termux" ,可以提供强大的shell环境,而无需获得root权限。但是,触摸屏键盘不包括"控制" 和"ALT" 按钮。但是一些互动程序(例如,Nano,Emacs)需要这些按钮。 是否有任何方法可以添加此按钮,或使用其他方法来替换此按钮? ...

1  LG键盘的振动  ( Vibration for lg keyboard ) 
我不知道其他模型,但我的LG Optimus L3 2在触摸虚拟键盘时不会振动。这真的很糟糕,因为听到声音是为了确保按下钥匙很烦人。由于我找不到任何选项来激活它,我尝试了在市场上提供的另一个键盘,它运行,但在按返回键时仍然没有振动。有没有办法激活设备中所有键的振动? ...

7  启用希伯来语滑动输入  ( Enable hebrew swipe input ) 
我注意到我可以使用(用我的盒子nexus 4)滑动。似乎没有英语,但似乎没有用于希伯来语输入的方式。 我缺少启用这个的配置选项吗? 我知道希伯来语滑动输入有第三方应用程序,但如果操作系统为我提供该功能,我更愿意使用它们。 ...

3  有没有办法自定义键盘设置?  ( Is there a way to customize keyboard settings ) 
在我的三星迷人(AT& t)上,他们有(无论如何,我可以使用)将语音命令键拆开Swype键盘。因此,我似乎必须做出选择,我想使用Swype或者是否可以轻松访问我的语音命令麦克风。 我希望添加自定义键盘的方法,其中我在设置它时指定键,或者(更理想地)他们已经以明显的方式设置,但是使用语音条目Swype键盘。 ...

2  在AOSP自定义构建仿真器中使用软件键盘  ( Using software keyboard in aosp custom build emulator ) 
我终于能够建立自己的AOSP图像,我想调试软件键盘的一些问题。但是,默认模拟器具有模拟物理键盘,我不知道如何禁用它。 我知道Android SDK允许在创建AVD时禁用键盘,但我只能为SDK带来的平台创建这样的AVDS,而不是我自己的构建。 ...

141  如何在Android仿真器上使用PC的键盘?  ( How can i use my pcs keyboard on the android emulator ) 
我想在Android模拟器上运行/测试Android应用程序,我想用我的PC键盘键入,因为它让我键入和测试更快。当我使用仿真器时,它只接受来自原生Android(屏幕)键盘的输入。如何在Android仿真器中启用我的PC键盘? ...

1  如何使用退格删除错误自动完成的单词?  ( How do i delete an incorrectly auto completed word with backspace ) 
我使用Samsung的默认键盘进行键入。具体来说,我使用它的Swype的部分,SwiftKey流程。 我最近将我的三星Galaxy S5更新为Android Marshmallow,我注意到我喜欢SwiftKey的一个功能被改变/删除了。以前,当我将键盘上滑动到"键入" 单词时,如果预测的单词不正确,我可以按Bac...




© 2022 it.wenda123.org All Rights Reserved. 问答之家 版权所有