如何在焦点上输入时在滚动视图中向上移动文本字段

时间:2012-10-12 10:56:26

标签: android android-layout

我有一个从320 x 480低密度屏幕渲染的以下活动(不介意右边的黑色条带,这是屏幕截图的问题)。

enter image description here

EditText包含在ScrollView中 - 实际上有六个。LinearLayout注册按钮通过权重衡量与ScrollView共享RelativeLayout,而其他所有内容都通过RelativeLayout进行定位。当我点击“电子邮件”文本字段(第四个)时,显示的是:

enter image description here

我的问题是,如何让父ScrollView向上移动而不仅仅是<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/bg_320x480"> <TextView android:id="@+id/signup_logo_txt" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#0a6698" android:textColor="#ff7f00" android:text="Blackened App Name" android:textStyle="bold" android:textSize="10pt" android:gravity="center" android:padding="8dp" /> <ImageView android:id="@+id/signup_icons_ghost_img" android:layout_width="match_parent" android:layout_height="wrap_content" android:src="@drawable/icons_ghost_320x112" android:layout_below="@id/signup_logo_txt" android:contentDescription="lalalala" android:layout_marginTop="-21dp" /> <TextView android:id="@+id/signup_tagline_txt" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="The easiest way to find a mobile plan that best suits how you use your phone." android:textColor="#000" android:textSize="5pt" android:gravity="center" android:layout_below="@id/signup_logo_txt" android:layout_marginTop="10dp" /> <TextView android:id="@+id/signup_getstarted_txt" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Sign up and let's get started!" android:textColor="#0a6998" android:textSize="6pt" android:textStyle="bold" android:gravity="center" android:layout_below="@id/signup_tagline_txt" android:layout_marginTop="6dp" /> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:weightSum="1.0" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:layout_below="@id/signup_getstarted_txt" > <ScrollView android:id="@+id/signup_fields_view" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight=".8"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content" > <EditText android:id="@+id/signup_name_fld" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:hint="Navn" android:layout_marginTop="5dp" /> <EditText android:id="@+id/signup_carrier_fld" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:hint="Nuvaerende mobilselskab" android:layout_marginTop="3dp" /> <EditText android:id="@+id/signup_plan_fld" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:hint="Mobilforbrug i kroner" android:layout_marginTop="3dp" /> <EditText android:id="@+id/signup_email_fld" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:hint="E-mail" android:layout_marginTop="3dp" /> <EditText android:id="@+id/signup_verify_email_fld" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:hint="Bekraeft e-mail" android:layout_marginTop="3dp" /> <EditText android:id="@+id/signup_mobile_number_fld" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:hint="Mobilnummer" android:layout_marginTop="3dp" /> </LinearLayout> </ScrollView> <Button android:id="@+id/signup_signup_btn" android:layout_width="wrap_content" android:layout_height="0dp" android:layout_weight=".2" android:text="SIGN UP" android:textColor="#fff" android:layout_gravity="center" android:layout_marginBottom="8dp" /> </LinearLayout> </RelativeLayout> 以使电子邮件文本字段更明显?此外,注册按钮的提示非常难看。有什么办法可以避免吗?这是布局的XML代码。

{{1}}

1 个答案:

答案 0 :(得分:1)

我没有在清单文件的活动中设置调整pan.set android:windowSoftInputMode="adjustPan"