Android-如何在键盘启动时自动滚动

时间:2014-02-21 18:48:17

标签: android xml layout scroll keyboard

我遇到了这个大问题:当我点击edittext并且键盘已启动时,键盘会覆盖按钮。我在网上搜索了解决方案,但调整了调整,调整范围不起作用。我也试过使用getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);但是没有用。

<?xml version="1.0" encoding="utf-8"?>
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/scrollView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/sfondo3"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:isScrollContainer="true"
     >

<RelativeLayout 
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal" >

    <TextView
        android:id="@+id/nickname"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="200dp"
        android:text="Inserisci un Nickname:"
        android:textSize="20dp" />

    <Button
        android:id="@+id/b1"
        android:layout_width="120dp"
        android:layout_height="50dp"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="350dp"
        android:text="Accedi" />



    <EditText
        android:id="@+id/editText1"
        android:layout_width="200dp"
        android:layout_height="50dp"
         android:layout_marginTop="250dp"
          android:windowSoftInputMode="adjustPan"
        android:layout_centerHorizontal="true"
        android:ems="10" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="20dp"
        android:src="@drawable/logox" />



</RelativeLayout>
</ScrollView>

1 个答案:

答案 0 :(得分:1)

您可以尝试在windowSoftInputMode文件中声明AndroidManifest.xml,如下所示。当键盘显示时,它会填充力活动以调整其大小。

<activity android:name="YourActivityName"
            android:windowSoftInputMode="adjustResize">

如果这没有帮助,您可能希望实施this thread中建议的更复杂的解决方案。