Android UI组件正在改变自己的... Android

时间:2014-08-23 18:19:33

标签: java android eclipse android-layout components

我是android开发的新手,所以我有一点问题。我使用相对布局,但我的组件(按钮,textviews,edittext等)改变了它们的位置,例如,我改变了一些其他组件,甚至切换它是不可见的。我想知道如何让它们彼此独立?改变一个人的位置,而不移动他人等等?

这是我的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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.misteriousegg.MainActivity"
android:orientation="vertical"
android:background="#111111" >

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignRight="@+id/editText1"
    android:layout_centerVertical="true"
    android:text="Aj da radi brate da se ja onako ne bih nervirao, i tako /n i tako"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:textColor="#FFFFFF" />

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/button2"
    android:layout_alignBottom="@+id/button2"
    android:layout_toLeftOf="@+id/textView1"
    android:onClick="Funkcija"
    android:text="Pocni!"
    android:textColor="#FFFFFF" />

<Button
    android:id="@+id/button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/textView2"
    android:layout_alignRight="@+id/textView2"
    android:layout_marginBottom="35dp"
    android:onClick="Funkcija1"
    android:text="Help?"
    android:textColor="#FFFFFF" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/editText1"
    android:layout_centerHorizontal="true"
    android:text="Zajebancija"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:textColor="#FFFFFF" />

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/button1"
    android:layout_alignParentTop="true"
    android:layout_marginTop="28dp"
    android:ems="10"
    android:textColor="#FFFFFF" >

    <requestFocus />
</EditText>

1 个答案:

答案 0 :(得分:0)

你使用了RelativeLayout,因为名称已经暗示视图是相对于彼此组织的。因此,如果您定义android:layout_toLeftOf="@+id/textView1"之类的内容,那么按钮将始终位于 TextView 的左侧,我想这是不可取的,因为您的按钮会在文字改变了 因此,不应使用RelativeLayout,而应考虑使用LinearLayout并将RelativeLayout嵌套在需要的位置。

由于在开发Android时,整个布局内容非常重要,因此您应该在developer.android.com (Layouts)阅读以下指南。