我正在尝试创建一个登录屏幕。我使用ScrollView来保存输入字段。我有以下xml:
<RelativeLayout ... >
<RelativeLayout
android:id="@+id/top_menu" ... >
<ImageButton ... />
<com.neopixl.pixlui.components.textview.TextView... />
</RelativeLayout>
<ScrollView
android:id="@+id/scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/top_menu"
android:overScrollMode="always">
<LinearLayout
android:id="@+id/login_group"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:orientation="vertical">
<com.neopixl.pixlui.components.edittext.EditText
android:id="@+id/user_name_email"
android:layout_width="match_parent"
android:layout_height="@dimen/input_height_size"
android:layout_marginEnd="20dp"
android:layout_marginStart="20dp"
android:background="@drawable/edit_text_strock"
android:hint="@string/user_Name_Email_EditText"
android:maxLines="1"
android:paddingLeft="10dp"
android:paddingStart="10dp"
android:textColor="@color/White"
android:textColorHint="@color/White"
android:textSize="@dimen/register_input_text_size"
pixlui:typeface="MuseoSans.otf"/>
<com.neopixl.pixlui.components.edittext.EditText.... />
<com.neopixl.pixlui.components.button.Button... />
<com.neopixl.pixlui.components.textview.TextView... />
<com.neopixl.pixlui.components.textview.TextView... />
<com.neopixl.pixlui.components.textview.TextView... />
<com.neopixl.pixlui.components.button.Button... />
</LinearLayout>
</ScrollView>
</RelativeLayout>
您可以看到完整的xml here。 当我点击EditText user_name_email时,它就会离开屏幕。
点击之前:
点击后:
我已尝试scrollTo(x, y)
和smootScrollTo(x, y)
但他们无效。
我该如何解决?
更新
adjustPan
有效,但我希望它与adjustResize
一起使用。
有可能吗?
答案 0 :(得分:0)
在清单文件中使用以下行,以获取需要更改的活动。
android:windowSoftInputMode="adjustPan"
如下所示使用它:
<activity
android:name=".ActivityName"
android:label="title_for_activity"
android:windowSoftInputMode="adjustPan" >
</activity>
希望这有帮助。
答案 1 :(得分:0)
将其添加到清单文件:
android:windowSoftInputMode="adjustPan"
在目标活动代码中。