我在編寫Android遊戲。在級別評選活動的佈局文件,我想佈局水平按鈕(他們實際上是ImageView
S)是這樣的:爲什麼我的TextView下的ImageView沒有顯示
x x x
x x x
每個級別按鈕有TextView
,與該級別的名稱作爲文本,下面它(我們將這兩種觀點一起稱爲「水平選擇」)。我用了很多LinearLayout
來做到這一點。下面是一個級別的選擇代碼:
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center_horizontal"
android:layout_weight="1">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/angles"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/angles_level"
android:textSize="@dimen/level_text_size"/>
</LinearLayout>
正如你所看到的,這兩種觀點的高度和寬度都是wrap_content
。但是,當我看設計師,文本視圖不顯示件事。當我在組件樹中選擇文本視圖,它顯示了文本的看法是:
附:圖片沒有顯示所有六個級別,因爲我還沒有完成。
正如你所看到的,文本視圖正好在底部!當我選擇ImageView
時,它顯示它佔據了其父項的所有空間!
我不知道爲什麼會這樣,我的形象肯定是一個正方形!你能解釋爲什麼會發生這種情況嗎?我該如何解決?
如果您需要我的整個佈局代碼,請隨時在評論中告訴我。
您需要使用RelativeLayout而不是LinearLayout。 LinearLayout不允許2個或更多對象佔據相同的空間。如果你想要發生這種情況,你需要使用RelativeLayout。 – Rachit
平面佈局?爲什麼不是相對佈局,它給了你更多的靈活選項 –
使用RelativeLayout,並將ImageView的頂部對齊到TextView的頂部,你會看到兩個視圖佔用相同的空間。 – Rachit