弹出软键盘时标题栏隐藏

Posted

技术标签:

【中文标题】弹出软键盘时标题栏隐藏【英文标题】:Title Bar gets hide when Softkeyboard pops up 【发布时间】:2011-12-13 03:43:37 【问题描述】:

我有一个自定义标题栏,所以我希望当用户在登录活动中键入用户名和密码时,标题栏不应该隐藏。但是,不幸的是它确实被隐藏了。我尝试使用android:windowSoftInputMode= "adjustPan,但标题栏仍然被隐藏。

那么,如何同时显示标题栏和软键盘?

这是我的屏幕截图,

这是我的登录活动

这是当我点击 EditText 并且标题栏被隐藏时。

这是我用于登录活动的 xml。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_
    android:layout_
    android:background="@android:color/white">

    <TableLayout android:id="@+id/tbl_layout" 
        android:layout_
        android:layout_ android:layout_marginRight="5dip"
        android:layout_marginLeft="5dip" android:layout_centerInParent="true">
        <TableRow android:weightSum="10">
            <TextView android:layout_weight="3" android:layout_
                android:layout_ android:text="Username:"
                android:textColor="@color/dark_purple" />
            <EditText android:id="@+id/et_username" 
                android:layout_weight="7" android:layout_
                android:layout_ android:hint="Username"
                android:singleLine="true"
                android:background="@drawable/edit_text_select"
                android:padding="8dip"
                 />
        </TableRow>

        <TableRow android:weightSum="10" android:layout_marginTop="10dip">
            <TextView android:layout_weight="3" android:layout_
                android:layout_ android:text="Password:"
                android:textColor="@color/dark_purple" />
            <EditText android:id="@+id/et_password" 
                android:layout_weight="7" android:layout_
                android:layout_ android:hint="Password"
                android:singleLine="true" 
                android:password="true"
                android:padding="8dip"
                android:background="@drawable/edit_text_select"/>
        </TableRow>
    </TableLayout>

    <LinearLayout android:layout_below="@id/tbl_layout" 
        android:layout_
        android:layout_ android:gravity="right"
        android:layout_marginTop="10dip">
        <Button android:id="@+id/btn_login" 
            android:layout_
            android:layout_ android:padding="15dp"
            android:text="Login" android:layout_marginRight="15dip"
            android:onClick="myOnClick"
            android:textColor="@android:color/white"
            android:background="@color/dark_purple"/>
    </LinearLayout>

</RelativeLayout>

【问题讨论】:

作为一个高效的 *** 用户,当您遇到问题时,您应该在此处发布 XML 布局。 【参考方案1】:

我相信你已经在一个RelativeLayout中获得了所有的观点。

如果你选择了ScrollView,那么将Titlebar textview 放在ScrollView 之外。我遇到了同样的问题,并通过这个技巧解决了。

如果您在此处发布 XML 布局,那么可以很好地纠正确切的问题。

【讨论】:

我现在发布了xml,但在此之前你的答案是什么,应该在评论部分。 你在哪里取了Title TextView?是在 ViewStub 中还是在其他地方? 我没有使用 ScrollView,因为这里不需要滚动。 我从你的回答中得到了提示,关于将我的布局放在 scrollView 中,它对我有用。谢谢。

以上是关于弹出软键盘时标题栏隐藏的主要内容,如果未能解决你的问题,请参考以下文章

AppCompatActivity 去掉标题栏和EditText弹出软键盘遮住输入框问题

在android中点击EditText的时候会弹出软键盘,这时候如果想隐藏软键盘或者填完内容后点其他的地方直接隐藏

Android 上的 Flex:弹出软键盘时应用程序屏幕变黑

弹出软键盘时,adMob 横幅会覆盖文本视图

移动端软键盘弹出时文本输入框下沉获取焦点并弹出软键盘

如何在Android中判断软键盘是不是弹出或隐藏