带有页脚的editdtext。当edittext获得焦点时,页脚在softinputkeyboard下消失

时间:2016-07-22 08:28:17

标签: android android-layout xamarin

我在活动中有一个页脚。这个页脚包含。在edittext下面提出了一个edittext和一个radiogroup。几乎像页脚页脚。 基本上我使用radiogroup来选择键盘类型(表情符号键盘或普通键盘)。 xml在下面。

 <RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_gravity="bottom">
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/textbase_layout"
        android:background="@color/appwhite">
        <View
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:background="@color/window_background"
            android:layout_alignParentTop="true" />
        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:maxHeight="80dp"
            android:id="@+id/comment_txt"
            android:layout_marginTop="8dp"
            android:textColorHint="@color/comment_header_grey"
            android:hint="message goes here"
            android:background="@android:color/transparent"
            android:padding="5dp"
            android:focusable="true"
            android:layout_marginLeft="10dp"
            android:layout_centerVertical="true"
            android:layout_marginRight="10dp" />
    </RelativeLayout>
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/appwhite"
        android:layout_below="@id/textbase_layout">
        <RadioGroup
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="10dp"
            android:orientation="horizontal">
            <RadioButton
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:id="@+id/keyboard_btn"
                android:padding="8dp"
                android:textColor="@drawable/selector_text_radio"
                android:button="@drawable/keyboard_icon_selector"
                android:layout_marginRight="5dp" />
            <RadioButton
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:id="@+id/emoji_btn"
                android:padding="8dp"
                android:textColor="@drawable/selector_text_radio"
                android:button="@drawable/smiley_icon_selector"
                android:layout_marginLeft="5dp" />
        </RadioGroup>
        <Button
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:id="@+id/send_btn"
            android:text="Send"
            android:textColor="@color/bcg_blue"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:background="@android:color/transparent" />
    </RelativeLayout>
</RelativeLayout>

我也设置了WindowSoftInputMode = SoftInput.AdjustResize。当我选择edittext时,我想要将整个页脚向上推。包括radiogroup。但在某些情况下,这种情况并没有发生。底部无线电组被软键盘切断。当我在oncreate()方法中执行这一行时。

 Window.SetSoftInputMode(SoftInput.StateAlwaysHidden);

如果我发表上述评论。总是会显示无线电组,但它会创建一个不同的不需要的条件,因为当活动首先打开时,软键盘会弹出? 我已尝试在此算法中从edittext中删除焦点,但软键盘仍然会在输入活动时弹出。如果有人对如何解决这个问题有任何想法,将不胜感激。

1 个答案:

答案 0 :(得分:1)

使用以下代码更改清单xml,xml布局包含活动。

机器人:windowSoftInputMode = “stateUnchanged | adjustResize”

OR

机器人:windowSoftInputMode = “adjustPan | adjustResize”

更改MANIFEST FILE

 <application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.adjustscroll.MainActivity"
        android:label="@string/app_name"
        android:windowSoftInputMode="stateUnchanged|adjustResize"
         >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

希望这会对你有所帮助。让我知道如果解决了。