Odpowiedzi:
Każdy z atrybutów można zastosować do rozmiaru poziomego lub pionowego widoku (kontrola wizualna). Służy do ustawiania rozmiaru widoku lub układu na podstawie jego zawartości lub rozmiaru jego układu nadrzędnego, zamiast jawnego określania wymiaru.
fill_parent(przestarzałe i przemianowane MATCH_PARENTna poziomie API 8 i wyższym)
Ustawienie układu widżetu na wartość fill_parent zmusi go do rozwinięcia, aby zajął tyle miejsca, ile jest dostępne w elemencie układu, w którym został umieszczony. Jest to w przybliżeniu odpowiednik ustawienia stylu dokowania kontrolki formularzy systemu Windows na Fill.
Ustawienie układu najwyższego poziomu lub kontrolki na fill_parent zmusi go do zajęcia całego ekranu.
wrap_content
Ustawienie rozmiaru Widoku na wartość wrap_content zmusi go do rozwinięcia się na tyle daleko, aby zawierał zawarte w nim wartości (lub kontrolki podrzędne). W przypadku elementów sterujących - takich jak pola tekstowe (TextView) lub obrazy (ImageView) - spowoduje to zawinięcie wyświetlanego tekstu lub obrazu. W przypadku elementów układu zmieni rozmiar układu, aby pasował do elementów sterujących / układów dodanych jako jego elementy potomne.
Jest to mniej więcej równowartość ustawienia Autosizewłaściwości Form Form Windows na True.
Dokumentacja online
Jest kilka szczegółów w Android dokumentacji kodu tutaj .
fill_parent(przestarzałe) =match_parent
Ramka widoku potomnego rozwija się, aby dopasować się do granicy widoku rodzica.
wrap_content
Obramowanie widoku potomnego otacza się ściśle wokół własnej zawartości.
Oto kilka zdjęć, aby wyjaśnić wszystko. Zielone i czerwone są TextViews. Biel jest LinearLayoutprześwitująca.

Każdy View(a TextViewAn ImageView, A Button, itd.) Musi ustawić widthi heightzdania. W pliku układu xml może to wyglądać tak:
android:layout_width="wrap_content"
android:layout_height="match_parent"
Oprócz ustawienia szerokości i wysokości na match_parentlub wrap_content, możesz również ustawić je na pewną wartość bezwzględną:
android:layout_width="100dp"
android:layout_height="200dp"
Zasadniczo nie jest to jednak tak dobre, ponieważ nie jest tak elastyczne dla urządzeń różnej wielkości. Po zrozumieniu wrap_contenti match_parentnastępnej rzeczy do nauczenia jest layout_weight.
Pionowy układ liniowy
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="width=wrap height=wrap"
android:background="#c5e1b0"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="width=match height=wrap"
android:background="#f6c0c0"/>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="width=match height=match"
android:background="#c5e1b0"/>
</LinearLayout>
Poziomy układ liniowy
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="WrapWrap"
android:background="#c5e1b0"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="WrapMatch"
android:background="#f6c0c0"/>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="MatchMatch"
android:background="#c5e1b0"/>
</LinearLayout>
Wyjaśnienie w tej odpowiedzi zakłada, że nie ma marginesu ani wypełnienia . Ale nawet jeśli tak, podstawowa koncepcja jest nadal taka sama. Obramowanie / odstępy widoku są korygowane przez wartość marginesu lub wypełnienia.
fill_parent sprawi, że szerokość lub wysokość elementu będzie tak duża, jak element macierzysty, innymi słowy, kontener.
wrap_content sprawi, że szerokość lub wysokość będzie tak duża, jak to konieczne, aby pomieścić zawarte w niej elementy.
fill_parent :
Komponent ma ustawiony układ, fill_parentktóry będzie obowiązkowo rozwinąć, aby wypełnić elementy jednostki układu jak najwięcej w przestrzeni. Jest to zgodne z właściwością dockstyle kontrolki Windows. Najwyższy ustawiony układ lub fill_parentelement sterujący zmusi go do zajęcia całego ekranu.
wrap_content
Skonfiguruj widok wielkości wrap_contentbędzie zmuszony do wyświetlenia jest rozwinięty, aby pokazać całą zawartość. Na przykład formanty TextView i ImageView są ustawione na wrap_contentwyświetlanie całego wewnętrznego tekstu i obrazu. Elementy układu zmienią rozmiar zgodnie z zawartością. Skonfiguruj widok wielkości atrybutu Autosize w wrap_contentprzybliżeniu równoważny do ustawienia kontrolki Windows dla True.
Aby uzyskać szczegółowe informacje, sprawdź ten link: http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html
fill_parentzmieniono jego nazwęmatch_parentna API poziom 8 i wyższy.