В чем разница между match_parent и fill_parent?

Я немного запутался в двух свойствах XML: match_parent и fill_parent . Кажется, что оба они одинаковы. Есть ли разница между ними?

Они – то же самое (в Уровне 8+ API). Используйте match_parent .

FILL_PARENT (переименованный MATCH_PARENT в API 8 и выше), что означает, что представление хочет быть таким же большим, как и его родительский (минус заполнение)

fill_parent : представление должно быть таким же большим, как и его родительское (минус заполнение). Эта константа устарела, начиная с уровня API 8 и заменяется match_parent .

http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html

Google изменило имя, чтобы избежать путаницы.

Проблема с старым именем fill parent заключалась в том, что он подразумевает, что он влияет на размеры родителя, в то время как match parent элемент match parent лучше описывает результирующее поведение – сопоставлять измерение с родительским.

Обе константы в конце концов достигают -1 , и поэтому приводят к одинаковому поведению в приложении. Как ни странно, это изменение имени, сделанное для выяснения вещей, похоже, добавило путаницы, а не устранило ее.

Функционально никакой разницы, Google только что изменил имя от fill_parent до match_parent, с уровня API 8 (Android 2.2). FILL_PARENT по-прежнему доступен по соображениям совместимости.

LayoutParams.FILL_PARENT и LayoutParams.MATCH_PARENT имеют значение -1. Не уверен, что соблазнил google для перехода от Fill Parent к Match Parent 🙂

Поскольку большинство phones are >= Android 2.2 .., вы должны использовать Match Parent для будущей совместимости … не уверены, когда они прекратят использование старой константы Fill Parent!

Для обеспечения совместимости лучше придерживаться fill_parent, то есть при поддержке ниже устройств API 8. Но если ваше приложение нацелено на API 8 и выше, вы должны использовать match_parent.

fill_parent (переименованный MATCH_PARENT в API 8 и выше), что означает, что представление хочет быть таким же большим, как и его родительский (минус заполнение)

fill_parent : представление должно быть таким же большим, как и его родительское (минус заполнение). Эта константа устарела, начиная с уровня API 8 и заменяется match_parent

Для Android API от 1.6 до 2.1 match_parent выдаст вам ошибку, поэтому в этих случаях используйте fill_parent . Чтобы поддерживать обратную совместимость, лучше использовать fill_parent

  • Оба являются статическими конечными константами, которые представляют значение -1
  • FILL_PARENT устарел на уровне API 8

Итак, MATCH_PARENT и FILL_PARENT одинаковы?

Да, MATCH_PARENT и FILL_PARENT – это просто разные постоянные имена для одного и того же целочисленного значения (-1, если вам интересно), используемый для указания режима макета View в его родительском элементе.

Итак, почему MATCH_PARENT добавил?

Я помню, что Роман Гай (разработчик Android в Google) сказал, что они изменили имя, потому что « fill_parent » fill_parent для разработчиков. В связи с тем, что « fill_parent » не заполняет оставшееся пространство (для этого вы используете атрибут веса), но он занимает столько места, сколько его родительский макет. Вот почему новое имя « match_parent »

MATCH_PARENT и FILL_PARENT одинаковы?

Да, MATCH_PARENT и FILL_PARENT – это просто разные постоянные имена для одного и того же целочисленного значения (-1, если вам интересно), используемый для указания режима макета View в его родительском элементе.

Итак, почему MATCH_PARENT добавил?

Команда Android обнаружила, что разработчики неправильно интерпретировали FILL_PARENT чтобы означать, что View заполнит оставшееся пространство, оставшееся в его родительском. Фактически, указав FILL_PARENT , View запрашивает, чтобы он был таким же большим, как и его родитель.

Хорошо, я получаю, как работает FILL_PARENT/MATCH_PARENT . Какое это имеет значение, если я использую одно или другое?

FILL_PARENT устарел. Быть осужденным не делает его дьяволом, но в конце концов он уйдет. Ваше приложение более MATCH_PARENT используя MATCH_PARENT . Зачем использовать устаревшую опцию, когда текущая опция ведет себя точно так же?

Кроме того, FILL_PARENT фактически вводит в заблуждение. Я лично видел людей в замешательстве, потому что это не работает так, как они думали. Фактически, я видел один тег, используя как FILL_PARENT и MATCH_PARENT , потому что разработчик подумал (понятно), что это два разных режима макета.

КАК ВЫ МОЖЕТЕ ПОЛУЧИТЬ FILL_PARENT ЧТОБЫ ПОЛУЧИТЬ FILL_PARENT ?

Вот краткий пример того, как MATCH_PARENT/FILL_PARENT может привести к тому, что люди неоднократно прикладывают головы к своим столам. Сначала сделайте очень простой макет, содержащий несколько экземпляров View .

      

FILL_PARENT устарел на уровне API 8, а MATCH_PARENT использует API более высокого уровня

match_parent используется вместо fill_parent и устанавливает его, чтобы перейти до родителя. Просто используйте match_parent и забудьте о fill_parent . Я полностью отбросил fill_parent, и все идеально, как обычно.

Проверьте здесь больше.

Просто, чтобы дать ему имя ближе к его фактическому действию . "fill_parent" не заполняет оставшееся пространство, как это подразумевалось в имени (для этого вы используете атрибут weight). Вместо этого он занимает столько места, сколько его родительский макет. Вот почему новое имя "match_parent"

Оба имеют сходную функциональность, разница только в том, что fill_parent используется до уровня API 8, а match_parent используется после уровня API 8 или более высокого уровня.

Когда вы match_parent width и height match_parent как match_parent в свойстве XML , он будет занимать всю область, которая имеет родительское представление, то есть она будет такой же большой, как и родительский.

    

Харе родитель красный, а ребенок зеленый. Ребенок занимает всю площадь. Потому что это width и height match_parent .

введите описание изображения здесь

Примечание. Если для родителя применяется дополнение, то это пространство не будет включено.

    

введите описание изображения здесь

Таким образом, TextView hight = 300dp (высота родителя) – (20 (paddingTop) +10 (paddingBottom)) = (300 – 30) dp = 270 dp

fill_parent Vs match_parent

fill_parent – это предыдущее имя match_parent

Для API уровня 8 и выше fill_parent переименованный как match_parent и fill_parent теперь устарел.

Таким образом, fill_parent и match_parent одинаковы.

Документация API для fill_parent

Представление должно быть таким же большим, как и его родительское (минус заполнение). Эта константа устарела, начиная с уровня API 8 и заменяется на {@code match_parent}.

match_parent и fill_parent – это те же свойства, которые используются для определения ширины или высоты представления в полноэкранном режиме по горизонтали или по вертикали.

Эти свойства используются в файлах android xml, подобных этому.

  android:layout_width="match_parent" android:layout_height="fill_parent" 

или

  android:layout_width="fill_parent" android:layout_height="match_parent" 

fill_parent использовался в предыдущих версиях, но теперь он устарел и заменен match_parent . Надеюсь, это поможет вам.

fill_parent: представление должно быть размером с родительский.

теперь этот контент fill_parent устарел и заменен match_parent.

Для меня заполнение родительского и родительского совпадений выполняет одну и ту же функцию только:

fill parent : использовался до API 8

match parent Это было использовано из API 8+ Function of Both Заполняет родительское представление в сторону дополнения

match_parent, что означает, что представление хочет быть таким же большим, как и его родительский элемент (минус заполнение).

wrap_content, что означает, что представление хочет быть достаточно большим, чтобы заключить его содержимое (плюс дополнение)

Для лучшей иллюстрации я создал образец макета, который демонстрирует эту концепцию. Чтобы увидеть его эффект, я добавил границу каждого содержимого textView.

В содержимом textView «Match parent» мы видим, что его ширина макета распределена из его основной длины.

Но мы можем видеть в содержании textView «Wrap Content», это ширина макета, завернутая в его содержимое (Wrap Content).

Платформа Android

FILL_PARENT был переименован в MATCH_PARENT в API 8 и выше, что означает, что представление хочет быть таким же большим, как и его родительский (минус заполнение) – Google

fill_parent (переименованный MATCH_PARENT в API 8 и выше), что означает, что представление хочет быть таким же большим, как и его родительский (минус заполнение)

fill_parent: представление должно быть таким же большим, как и его родительское (минус заполнение). Эта константа устарела, начиная с уровня API 8 и заменяется match_parent

Для Android API от 1.6 до 2.1 match_parent выдаст вам ошибку, поэтому в этих случаях используйте fill_parent. Чтобы поддерживать обратную совместимость, лучше использовать fill_parent

Оба являются статическими конечными константами, которые представляют значение -1

FILL_PARENT устарел на уровне API 8

SO MATCH_PARENT И FILL_PARENT являются одинаковыми?

Да, MATCH_PARENT и FILL_PARENT – это просто разные постоянные имена для одного и того же целочисленного значения (-1, если вам интересно), используемый для указания режима макета View в его родительском элементе.

SO ПОЧЕМУ БЫЛО MATCH_PARENT ADDED?

Как сказал Роман Гай (разработчик Android в Google), они изменили имя, потому что «fill_parent» запуталось для разработчиков. В связи с тем, что «fill_parent» не заполняет оставшееся пространство (для этого вы используете атрибут веса), но он принимает как

Interesting Posts
Давайте будем гением компьютера.