软键盘的弹出的操作

1、对软键盘的操作:InputMethodManager

/**
     * 切换键盘状态
     * 
     * @param v
     */
    public void switchInput(View v) {
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
    }

    /**
     * 打开键盘
     * 
     * @param v
     */
    public void openInput(View v) {
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.showSoftInput(findViewById(R.id.editText1), InputMethodManager.SHOW_IMPLICIT);
    }

    /**
     * 关闭键盘
     * 
     * @param v
     */
    public void closeInput(View v) {
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(v.getWindowToken(), 0); // 强制隐藏键盘
    }

2、键盘弹出的布局变化(顶上去):
(1)使用scrollview布局
(2)、edittext的点击事件
// 将ScrollView滚动到底
mScrollView.fullScroll(View.FOCUS_DOWN);
(3)、xml的配置

 
        <activity
            android:name="com.test.ruanjianpan.Myruanjianpan2Activity"
            android:label="@string/title_activity_myruanjianpan2"
            android:windowSoftInputMode="stateHidden|adjustResize" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            intent-filter>
        activity>

////不能实现效果的原因:设定了固定的高度,导致被遮挡:
软键盘的弹出的操作_第1张图片

你可能感兴趣的:(android笔记)