我进行了很多搜索并尝试了很多解决方法 - 但似乎都不起作用。
在我的片段中,我有带有标准 ArrayAdapter 的 AutoCompleteTextView,它动态填充 onActivityCreated() 函数(如下所示)。
第一次添加片段时一切正常。然而,在我用另一个片段替换这个片段(带有自动完成功能)后 - 并使用“后退”按钮返回 - 我遇到了“自动完成”停止表现得像“自动完成”的问题 - 所以如果我现在输入它,但是我不再收到“建议下拉菜单”。
值得一提的是,我没有使用设备 softInput 进行打字 - 因为我只需要将手机号码作为输入 - 我在屏幕上显示了自己的自定义键。但我认为这不会造成任何问题。
随附 2 个屏幕截图 - 1)在自动完成工作正常时替换片段之前 2)在替换片段之后并返回,当自动完成停止显示建议时(注意我在这里再次输入“981”)。
欢迎任何帮助!
// 'mCustMobileNums' is a singleton class which fetches strings stored in a DB table.
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
Log.d(TAG, "In onActivityCreated");
super.onActivityCreated(savedInstanceState);
if (mCustMobileNums==null) {
mCustMobileNums = CustomerMobileNums.getInstance(getActivity().getApplicationContext());
}
initInputCustMobile();
}
private void initInputCustMobile() {
if(mAdapter==null) {
Log.d(TAG, "Creating autocomplete adapter instance.");
mAdapter …Run Code Online (Sandbox Code Playgroud) 我在我的登录活动中尝试了以下内容 - 虽然它工作正常,但它无法禁用默认屏幕键盘的捕获 - 因此它完全违背了目的,因为人们可以从键盘按下时看到输入的密码。
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
我尝试使用 3rd 方应用程序制作屏幕截图视频 - 虽然整个屏幕显示为黑色,但键盘和印刷机仍然显示。
任何想法,我怎么能停下来让键盘也被捕获?