0

由于我的用户界面非常简单,我想在一个 xml 文件中同时满足横向和纵向的需求。

在纵向模式下,一切都如我所愿。

在横向中,几乎没有显示 main_title TextView。有解决办法吗?

<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:background="@color/background"
    android:layout_width="fill_parent" android:padding="20dip"
    android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android">
    <LinearLayout android:layout_height="fill_parent"
        android:layout_gravity="center" android:orientation="vertical"
        android:layout_marginTop="30dip" android:id="@+id/LinearLayout01"
        android:layout_width="fill_parent">
        <TextView android:layout_marginBottom="15dip"
            android:textSize="24.5sp" android:layout_height="wrap_content"
            android:id="@+id/TextView01" android:layout_gravity="center"
            android:text="@string/main_title" android:layout_width="wrap_content"></TextView>
        <Button android:layout_marginBottom="15dip"
            android:layout_height="wrap_content" android:id="@+id/start_button"
            android:text="@string/start_label" android:layout_width="fill_parent"></Button>
        <TextView android:textSize="18sp" android:layout_height="wrap_content"
            android:id="@+id/TextView02" android:text="@string/time_window_please_select_label"
            android:layout_width="wrap_content"></TextView>
        <Spinner android:layout_height="wrap_content" android:id="@+id/spinner"
            android:prompt="@string/time_window_prompt" android:layout_width="fill_parent"></Spinner>
        <TextView android:layout_height="wrap_content"
            android:layout_marginBottom="10dip" android:id="@+id/status_label"
            android:layout_width="wrap_content"></TextView>
        <TextView android:layout_height="wrap_content"
            android:layout_marginBottom="10dip" android:id="@+id/status_time_label"
            android:layout_width="wrap_content">
        </TextView>
        <ImageView android:layout_marginTop="60dip" android:id="@+id/info_button"
            android:src="@drawable/info" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:layout_gravity="bottom|right" />
    </LinearLayout>

</ScrollView>

链接:

http://www.doc.ic.ac.uk/~am907/landscape.png

http://www.doc.ic.ac.uk/~am907/portrait.png

4

2 回答 2

1

看起来问题出在你的margin价值观padding上。

最好的选择可能是为此设置两种不同的布局,一种是纵向的,另一种是横向的。在您的文件夹中创建另一个名为layout-landandlayout-portres文件夹。然后将布局文件复制到这两个文件夹中,并对方向进行适当的更改。

有关为不同方向提供不同资源等的更多信息,请参阅 android 文档:http: //developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources

于 2011-03-16T18:08:35.487 回答
0

在文件顶部添加一个空白文本视图,即在不可见的文本视图上方。也许您的内容区域很大,屏幕无法支持。您所面临的问题首先不应该发生....但这是一种解决方法。也尝试切换模拟器...

于 2011-03-16T17:22:07.303 回答