我为我正在创建的应用创建了一个登录页面。我现在正在使UI看起来像样。在我的登录页面(以及我需要输入数据的其他页面)中,如果手机是垂直的,则EditText框不会捕捉到屏幕以查看正在键入的内容。然而,如果手机是水平的吗?
你们有没有想过为什么会这样?
如果有帮助,这是XML代码:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="@color/background"
android:padding="30dip">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:layout_gravity="center">
<TableLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:gravity="center"
android:stretchColumns="*">
<EditText android:id="@+id/username" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:background="@android:drawable/editbox_background" />
<EditText android:id="@+id/password" android:layout_width="fill_parent"
android:password="true" android:layout_height="wrap_content"
android:background="@android:drawable/editbox_background"
android:inputType="text" />
<TableRow>
<Button android:id="@+id/submit_button" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/login_label" />
<Button android:id="@+id/back_button" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/back_label" />
</TableRow>
<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_marginBottom="25dip"
android:gravity="center" android:id="@+id/txtServerStatus" />
</TableLayout>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:0)
使用android:SingleLine =“true”。为了更好地理解你能分享快照吗?
答案 1 :(得分:0)
我不确定我是否在这里关注你。但是,如果你的意思是你的TextEdit“框”留空,那是因为当你翻转屏幕方向时Android会调用onCreate方法。 因此,您需要将文本保存在文本字段中。
如果可以考虑删除翻转。您可以在应用程序中的Manifest中执行此操作:
<application
android:screenOrientation="portrait"
>