我的应用程序几乎在所有设备中都看起来很完美。但在横向模式下,它会断开并将视图放在彼此顶部。我有Android Studio的GenyMotion插件,我尝试过安装不同类型的设备,但问题仍然存在。
以下是肖像模式的示例:
横向模式:
.XML文件:
<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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
android:background="#FFFFFF">
<TextView
android:id="@+id/timerValue"
android:layout_width="250dp"
android:layout_height="55dp"
android:layout_above="@+id/pauseButton"
android:layout_centerHorizontal="true"
android:layout_marginBottom="37dp"
android:textSize="50dp"
android:textColor="#cd0000"
android:text="@string/timerVal"
android:textStyle="bold"
android:background="#FFFFFF"
android:gravity="center_horizontal" />
<Button
android:id="@+id/startButton"
android:layout_width="105dp"
android:layout_height="45dp"
android:text="@string/startButtonLabel"
android:background="#000000"
android:textColor="#fffaf0"
android:textStyle="bold"
android:textSize="25dp"
android:layout_marginBottom="196dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="39dp"
android:layout_marginStart="39dp" />
<Button
android:id="@+id/pauseButton"
android:layout_width="105dp"
android:layout_height="45dp"
android:layout_alignBaseline="@+id/startButton"
android:layout_alignBottom="@+id/startButton"
android:layout_alignParentRight="true"
android:layout_marginRight="38dp"
android:text="@string/pauseButtonLabel"
android:background="#000000"
android:textColor="#fffaf0"
android:textStyle="bold"
android:textSize="25dp" />
<TextClock
android:layout_width="250dp"
android:layout_height="55dp"
android:id="@+id/textClock"
android:textSize="50dp"
android:layout_marginTop="48dp"
android:gravity="center_horizontal"
android:background="#FFFFFF"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
<Button
android:layout_width="105dp"
android:layout_height="45dp"
android:text="RESET"
android:id="@+id/reset"
android:layout_marginTop="30dp"
android:textSize="25dp"
android:textStyle="bold"
android:background="#000080"
android:textColor="#DC143C"
android:layout_below="@+id/pauseButton"
android:layout_centerHorizontal="true" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fbutton"
android:src="@drawable/fbshare"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:background="#FFFFFF" />
</RelativeLayout>
答案 0 :(得分:0)
您必须在res中创建另一个目录,并将其命名为layout-land
,它与您在多语言值目录中的操作类似。
这意味着对于任何事物都有两种不同的活动:布局文件夹中的肖像和布局 - 土地文件夹中的横向,并且两者具有相同的名称。
创建横向活动后,您可以根据需要进行编辑
答案 1 :(得分:0)
这应该主要完成工作。正如其他人所说,通常最好为景观创建布局。
<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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity"
android:background="#FFFFFF">
<TextView
android:id="@+id/timerValue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="50dp"
android:textColor="#cd0000"
android:text="00:00:00"
android:textStyle="bold"
android:background="#FFFFFF"
android:gravity="center_horizontal"
android:layout_above="@+id/startButton"
android:layout_centerHorizontal="true"/>
<Button
android:id="@+id/startButton"
android:layout_width="105dp"
android:layout_height="45dp"
android:text="Start"
android:background="#000000"
android:textColor="#fffaf0"
android:textStyle="bold"
android:textSize="25dp"
android:layout_alignTop="@+id/pauseButton"
android:layout_toLeftOf="@+id/fbutton"
android:layout_toStartOf="@+id/fbutton"/>
<Button
android:id="@+id/pauseButton"
android:layout_width="105dp"
android:layout_height="45dp"
android:text="Pause"
android:background="#000000"
android:textColor="#fffaf0"
android:textStyle="bold"
android:textSize="25dp"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/fbutton"
android:layout_toEndOf="@+id/fbutton"/>
<TextClock
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textClock"
android:textSize="50dp"
android:gravity="center_horizontal"
android:background="#FFFFFF"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="RESET"
android:id="@+id/reset"
android:textSize="25dp"
android:textStyle="bold"
android:background="#000080"
android:textColor="#DC143C"
android:layout_above="@id/fbutton"
android:layout_below="@+id/startButton"
android:layout_centerHorizontal="true"
android:layout_marginTop="49dp"/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fbutton"
android:src="@drawable/fbshare"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:background="#FFFFFF"/>
</RelativeLayout>