zoukankan      html  css  js  c++  java
  • 阻止点击numberpicker(edittext)时候弹出输入法

    1.首先说说默认不显示输入法,这里通常又三种:

    在 AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为 adjustUnspecified|stateHidden


      < activity android:name=".Main"
        android:label="@string/app_name"
        android:windowSoftInputMode="adjustUnspecified|stateHidden"
        android:configChanges="orientation|keyboardHidden">  //这里我没有输入也是可以的
      < intent-filter>
        < action android:name="android.intent.action.MAIN" />
        < category android:name="android.intent.category.LAUNCHER" />
      < /intent-filter>
      < /activity>

    方法二:

      让 EditText失去焦点,使用EditText的clearFocus方法

      例如:
    EditText edit=(EditText)findViewById(R.id.edit);
      edit.clearFocus();

    方法三:

      强制隐藏Android输入法窗口

    例如:
      EditText edit=(EditText)findViewById(R.id.edit);
      InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
      imm.hideSoftInputFromWindow(edit.getWindowToken(),0);

      然后就说说numberpicker。找个是android3.0之后才有的一个控件,总的来说并不美观(很多人会用想numberwheelpicker之类的控件),但还是蛮使用的。很多情况下并不希望点击numberpicker时候弹出输入法。所以又下面的解决办法,本质还是处理edittext哦:

    numberPicker = (NumberPicker)findViewById(R.id.numPicker);
            numberPicker.setMaxValue(100);
            numberPicker.setMinValue(0);
            numberPicker.setWrapSelectorWheel(false);
            String[] nums = new String[100];
            for(int i=0; i<nums.length; i++)
               nums[i] = Integer.toString(i);
            numberPicker.setDisplayedValues(nums);
            numberPicker.setFocusable(false);
            numberPicker.setValue(1);
            ((EditText) numberPicker.getChildAt(1)).setOnFocusChangeListener(new OnFocusChangeListener() {
                
                @Override
                public void onFocusChange(View v, boolean hasFocus) {
                    // do nothing
                }
            });
            // Suppress soft keyboard from the beginning
            ((EditText) numberPicker.getChildAt(1)).setInputType(InputType.TYPE_NULL);
  • 相关阅读:
    PYTHON压平嵌套列表
    linux下IPTABLES配置详解
    Python面试必须要看的15个问题
    两个实用的Python的装饰器
    Python的16个“坑”
    python实现不可修改的常量
    51nod-1322: 关于树的函数
    51nod-1310: Chandrima and XOR
    51nod-1296: 有限制的排列
    51nod-1277: 字符串中的最大值
  • 原文地址:https://www.cnblogs.com/slider/p/2973635.html
Copyright © 2011-2022 走看看