我想了解Android佈局如何工作。如果我製作一個簡單的線性佈局並添加一些文本字段,並將線性佈局的寬度設置爲wrap_content,則在更改文本字段的寬度時,我注意到了一種不尋常的效果。如果文本字段的寬度是wrap_content,那麼文本字段的大小與預期的一樣(文本的寬度)。但是,如果將文本字段的寬度設置爲match_parent,則文本字段的大小會增加爲設備屏幕的寬度。我預計文本視圖的大小是文本的寬度,而不是屏幕顯示的大小。混淆android:width = match_parent與wrap_content
換句話說,如果父佈局的寬度是wrap_content並且子視圖的寬度是wrap_content,那麼看起來子視圖的寬度增長爲設備屏幕的寬度,即與將父視圖的寬度設置爲match_parent。有人可以解釋爲什麼會發生這種情況,因爲它似乎對我來說很直觀。
下面是一些簡單的代碼來說明我在說什麼。將Kunal文本視圖的寬度從wrap_content更改爲match_parent。
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/darker_gray">
<TextView
android:text="VIP List"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#4CAF50"
android:textSize="24sp" />
<TextView
android:text="Kunal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#4CAF50"
android:textSize="24sp" />
<TextView
android:text="Kagure"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#4CAF50"
android:textSize="24sp" />
<TextView
android:text="Lyla"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#4CAF50"
android:textSize="24sp" />
</LinearLayout>
可能的重複[有什麼區別fill \ _parent和wrap \ _content?](http://stackoverflow.com/questions/432763/whats-the-difference-between-fill-parent-and-wrap-content ) –
不會發生在我身上。當父母包裝內容並且孩子與父母相匹配或包裝內容時,父母的範圍與最寬的孩子一樣寬。 Android棉花糖。也許這取決於Android版本? – AlbAtNf