首先,圖像(來自hierarchyviewer):的Android layout_margin衝突屬性
我有文本的不同長度,我想是相同的大小兩個按鈕。在圖片中,你可以看到這在頂部工作。但是,我想在按鈕之間留出一些空間,因此對於第三個和第四個按鈕,我添加了layout_margin屬性以給它們一點空間。混沌隨之而來。第四個按鈕保持相同的大小並添加適當的邊距。但第三個按鈕似乎沒有在右側添加邊距,因此會損失寬度。
我認爲正在發生的事情是在對齊後應用邊距,所以...實際上,我不能想出一個完全解釋它的過程。
我想的是:
爲了理解這個東西是如何工作的 - 視圖的佈局似乎 直觀我,我無法想象在某個時刻我不 隨機變化屬性來解決這類問題。 有一個完整的教程,涵蓋了基本原理?
兩個相等長度的按鈕與不同長度的文本在相對的具有空白的 佈局中。我需要相對佈局來安排活動中的所有其他視圖。
代碼如下。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/goodThis"
android:text="Short text"
android:background="@drawable/button_red"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/goodThat"
/>
<Button
android:id="@+id/goodThat"
android:text="Longer text"
android:background="@drawable/button_green"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/goodThis"
/>
<Button
android:id="@+id/badThis"
android:text="Short text"
android:background="@drawable/button_red"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/goodThat"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/badThat"
android:layout_margin="3dp"
/>
<Button
android:id="@+id/badThat"
android:text="Longer text"
android:background="@drawable/button_green"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/badThis"
android:layout_margin="3dp"
/>
</RelativeLayout>
我只能說我在RelativeLayouts中也觀察到了一些奇怪的行爲,我不得不試驗一下才能找到解決方法。我知道,我通常避免提出參考文獻,因爲您從badThis做到了後面的badThat。 – gordonwd
我很高興放棄前瞻性參考(我有點驚訝它的工作)。我只是想了解如何創建足夠靈活的UI來處理不斷變化的屏幕尺寸,而且還允許您在兩個維度上進行排列。 (並讓我的按鈕之間有空間!) – TomDestry