显示键盘

时间:2016-02-16 19:33:29

标签: android github toolbar evernote

在我的应用程序中,我创建了一个工具栏,它固定在屏幕的底部,现在我想在键盘显示时将工具栏移动到键盘上方。我尝试了以下方法,但它没有用

试过这个:

android:windowSoftInputMode="stateVisible|adjustResize"

和这个

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

这是我的布局文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent"         android:layout_height="fill_parent">
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="133dp"
        android:gravity="center_vertical|top"
        android:textColor="@color/white"
        android:textSize="32sp"
        android:id="@+id/evmainText"
        android:inputType="textNoSuggestions"
        android:background="@android:color/transparent"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" 
    />
    <include layout="@layout/text_toolbar" />
</RelativeLayout>

这是工具栏文件

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/textFormatToolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:layout_alignParentBottom="true"
    android:minHeight="?attr/actionBarSize"
    android:background="@drawable/toolbar_back_text"
/>

我想像这样显示工具栏

enter image description here

4 个答案:

答案 0 :(得分:1)

我过去使用按钮栏但通过AndroidManifest完成了此操作。尝试在包含工具栏的活动中添加清单,包括以下内容:

<activity android:windowSoftInputMode="adjustResize">
    <!-- Something else -->
</activity>

希望它有所帮助。

答案 1 :(得分:0)

试试这个

getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE|WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

答案 2 :(得分:0)

我认为它对你很有帮助:

要启用adjustResize,请在活动的父布局中添加android:fitsSystemWindows =“true”

答案 3 :(得分:0)

借助此answer,我得以通过以下方式实现这一目标:

1 /将此属性添加到printf("%d\n", sizeof(char *));

中的活动中
AndroidManifest.xml

2 /将此属性添加到工具栏

android:windowSoftInputMode="stateVisible|adjustResize"