【问题标题】:Disable editText soft keyboard completely [duplicate]完全禁用editText软键盘[重复]
【发布时间】:2017-08-15 17:17:31
【问题描述】:

我正在编写一个让用户选择他的国家的流程。我有一个链接到适配器的编辑文本,它显示了所有可用的选项。

在我的清单中,我将活动设置为
android:windowSoftInputMode="stateAlwaysHidden"

我需要完全禁用软键盘。

它工作正常,除了在一种情况下。如果用户在editText上执行长按/长按,键盘就会弹出。

有没有办法通过使用代码或在清单中永久禁用特定活动中的键盘?

我的代码:

editCountry.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                picker = CountryPicker.newInstance(getString(R.string.select_counrty));
                picker.show(getSupportFragmentManager(), "COUNTRY_PICKER");
                picker.setListener( new CountryPickerListener() {
                    @Override
                    public void onSelectCountry(String name, String code) {
                        editCountry.setText(name);
                        picker.dismiss();
                    }
                });
            }
        });

我的清单:

 <activity android:name=".UserSettingPref"
         android:screenOrientation="portrait"

            android:windowSoftInputMode="stateAlwaysHidden" >

谢谢

【问题讨论】:

  • 如果您不希望用户能够编辑它,为什么不直接使用TextView

标签: android android-edittext keyboard android-softkeyboard


【解决方案1】:
InputMethodManager im = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
im.hideSoftInputFromWindow(editText.getWindowToken(), 0);

使用以下代码禁用屏幕键盘。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-11
    • 1970-01-01
    • 2013-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多