Android不自动弹出软键盘和不让软键盘弹出挤压图形

软键盘弹出挤压图形很变态,设计好的模型会在软件盘弹出数据变得丑陋无比,为了保持不变,只需要在

Manifest.xml 相应的 Activity 里添加

android:windowSoftInputMode="adjustPan|stateHidden"

为了不让软件盘弹出,如果是Activity的话,可以直接添加如下代码解决自动弹出软键盘的问题

  <activity android:name="com.guandehao.baobiao.B_KuCunBaoBiao" 
            android:windowSoftInputMode="adjustPan|stateHidden"
            android:configChanges="orientation|keyboardHidden"/>

 还有就是不在Activity下的设置可能无效,如ActivityFragment,那直接可以使用下面这些方法,上面的设置可以保留。

第一种方法:

就是在不要弹出软件盘对应的EditText的父控件里添加

android:focusable="true"
android:focusableInTouchMode="true"

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:focusable="true"  
        android:focusableInTouchMode="true" 
    android:orientation="vertical" >

这是我感觉最方便的一个方法,也有人如下解决办法

这是第二种方法:

在xml文件中加入一个隐藏的TextView:

<TextView  
        android:id="@+id/config_hidden"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:focusable="true"  
        android:focusableInTouchMode="true"  
        />

然后再在Activity中加入:

/**防止自动弹出软键盘*/
        TextView config_hidden = (TextView) view.findViewById(R.id.config_hidden);
        config_hidden.requestFocus();

我推荐使用第一种方法,简洁。

 

Android不自动弹出软键盘和不让软键盘弹出挤压图形,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。