我是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>
答案 0 :(得分:0)
你使用了RelativeLayout
,因为名称已经暗示视图是相对于彼此组织的。因此,如果您定义android:layout_toLeftOf="@+id/textView1"
之类的内容,那么按钮将始终位于 TextView 的左侧,我想这是不可取的,因为您的按钮会在文字改变了
因此,不应使用RelativeLayout,而应考虑使用LinearLayout
并将RelativeLayout嵌套在需要的位置。
由于在开发Android时,整个布局内容非常重要,因此您应该在developer.android.com (Layouts)阅读以下指南。