Android中的窗口刷新

Android中的窗口刷新,android,Android,我想在启动软键盘时调整应用程序窗口的大小。因此,我将以下标记添加到manifest.xml文件中的主活动中 android:WindowsOfInputMode=“调整大小” 然而,即使在应用午餐时间,键盘也会显示,窗口也会调整大小 我希望在启动时,至少键盘不会自动显示,窗口也不会调整大小。只有当某个类型为时,才应进行窗口大小调整 有什么指导吗 只是为了进一步补充,我有editText,它在启动时获得控件。在添加android:windowSoftInputMode=“adjustResize”

我想在启动软键盘时调整应用程序窗口的大小。因此,我将以下标记添加到manifest.xml文件中的主活动中 android:WindowsOfInputMode=“调整大小” 然而,即使在应用午餐时间,键盘也会显示,窗口也会调整大小

我希望在启动时,至少键盘不会自动显示,窗口也不会调整大小。只有当某个类型为时,才应进行窗口大小调整

有什么指导吗


只是为了进一步补充,我有editText,它在启动时获得控件。在添加android:windowSoftInputMode=“adjustResize”之前,完整的屏幕用于显示,当我触摸键盘时,键盘显示。我想要相同的行为,即默认情况下不应显示键盘,而是在有人触摸输入时显示并调整窗口大小,以便对代码进行以下更改

要在活动启动时隐藏键盘,请添加以下代码

public void hideSoftKeyboard() {
        if(getCurrentFocus()!=null) {
            InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
            inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
        }
    }
public void showSoftKeyboard(View view) {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
        view.requestFocus();
        inputMethodManager.showSoftInput(view, 0);
    }
要在edittext聚焦时显示键盘,请使用以下代码

public void hideSoftKeyboard() {
        if(getCurrentFocus()!=null) {
            InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
            inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
        }
    }
public void showSoftKeyboard(View view) {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
        view.requestFocus();
        inputMethodManager.showSoftInput(view, 0);
    }
在onCreate方法中调用
hideSoftKeyboard()

一旦edittext获得关注,请使用下面的代码

EditText editText = (EditText)findViewById(R.id.editText);

        editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
            @Override
            public void onFocusChange(View view, boolean b) {
                //Toast.makeText(getApplicationContext(),"Focused",Toast.LENGTH_SHORT).show();
                getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); // Resizing window programatically
                showSoftKeyboard(view);
            }
        });

对代码进行以下更改

要在活动启动时隐藏键盘,请添加以下代码

public void hideSoftKeyboard() {
        if(getCurrentFocus()!=null) {
            InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
            inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
        }
    }
public void showSoftKeyboard(View view) {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
        view.requestFocus();
        inputMethodManager.showSoftInput(view, 0);
    }
要在edittext聚焦时显示键盘,请使用以下代码

public void hideSoftKeyboard() {
        if(getCurrentFocus()!=null) {
            InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
            inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
        }
    }
public void showSoftKeyboard(View view) {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
        view.requestFocus();
        inputMethodManager.showSoftInput(view, 0);
    }
在onCreate方法中调用
hideSoftKeyboard()

一旦edittext获得关注,请使用下面的代码

EditText editText = (EditText)findViewById(R.id.editText);

        editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
            @Override
            public void onFocusChange(View view, boolean b) {
                //Toast.makeText(getApplicationContext(),"Focused",Toast.LENGTH_SHORT).show();
                getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); // Resizing window programatically
                showSoftKeyboard(view);
            }
        });

可以通过将此属性添加到清单文件来设置“活动”属性

喜欢,但还没试过

android:windowSoftInputMode

<activity android:windowSoftInputMode="stateHidden|adjustResize" . . . >
android:WindowsOfInputMode

您可以通过将活动属性添加到清单文件来设置活动属性

喜欢,但还没试过

android:windowSoftInputMode

<activity android:windowSoftInputMode="stateHidden|adjustResize" . . . >
android:WindowsOfInputMode

完美地添加stateHidden标记和adjustResize就达到了目的。谢谢Ric:)完美的添加stateHidden标签和adjustResize就成功了。谢谢,里克:)