在我的应用程序中,我有一个EditText,带有一个用于更改键盘输入类型的按钮.编码:

ToggleCambiarTeclado.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View view) {

if (ToggleCambiarTeclado.isChecked()) {

tipoDeTecladoActual = InputType.TYPE_CLASS_NUMBER;

imagenTeclado.setImageDrawable(getResources().getDrawable(R.drawable.keyboard_numeric));

} else {

tipoDeTecladoActual = InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS;

imagenTeclado.setImageDrawable(getResources().getDrawable(R.drawable.keyboard_querty));

}

editNumeroContador.setInputType(tipoDeTecladoActual);

}

});

它可以在我的手机中正常工作…但是我的老板有一个三星,并且没有更改手机中的键盘类型.

我尝试将其更改为TYPE_TEXT_VARIATION_NORMAL,TYPE_TEXT_VARIATION_VISIBLE_PASSWORD和YPE_CLASS_TEXT,但它们都不起作用.

有人知道这是否是错误吗?任何已知的解决方法?

谢谢.

编辑:

刚刚意识到我的老板已经安装了TouchPal.如果他将默认键盘更改为标准键盘,则可以正常使用…

解决方法:

后来的三星设备内置了SwiftKey键盘.SwiftKey故意决定忽略Android的InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS.

一种解决方法是使用InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD,虽然有点黑,但不幸的是,它是常见的解决方法.

XML变体:android:inputType =“ textVisiblePassword”

标签:samsung-mobile,android

来源: https://codeday.me/bug/20191027/1947155.html

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐