在xml中声明元素序列的重要性是什么

时间:2015-01-30 21:45:59

标签: android xml layout

我刚刚学习Android编程,所以我决定写一个关于计算人的BMI的简单应用程序!我遇到的问题是,当我首先声明我的TextView和Button,然后是ImageView时,所有三个元素都以纵向和横向模式适合屏幕:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
tools:context="com.example.bmicalculator.MainActivity">
<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="BMI Calculator" />
<Button
    android:id="@+id/button1"
    android:layout_width="195dp"
    android:layout_height="33dp"
    android:text="Start"
    android:textSize="15dp" />
<ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/splash" />

http://www.imageupload.co.uk/images/2015/01/30/4H6T2c.jpg http://www.imageupload.co.uk/images/2015/01/30/3VQ0uM.jpg

但是当我改变序列并在横向模式下ImageView输出更改后声明TextView和Button时,TextView就会消失!只有一半的Button显示和图像叠加显示顶部设置栏:

http://www.imageupload.co.uk/images/2015/01/30/2kP5Os.jpg

但是肖像模式还可以

http://www.imageupload.co.uk/images/2015/01/30/1l90d.jpg

那么当我改变在xml中声明这些元素的序列时会发生什么变化?我该如何解决这个问题。日Thnx

1 个答案:

答案 0 :(得分:0)

试试这个

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.bmicalculator.MainActivity">

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:adjustViewBounds="true"
    android:src="@drawable/splash"
    android:layout_above="@+id/textView1" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="BMI Calculator"
    android:layout_above="@+id/button1"
    android:layout_centerHorizontal="true" />

<Button
    android:id="@+id/button1"
    android:layout_width="195dp"
    android:layout_height="33dp"
    android:text="Start"
    android:textSize="15dp"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true" />

</RelativeLayout>