FILL_PARENT 和 MATCH_PARENT [重复]
Posted
技术标签:
【中文标题】FILL_PARENT 和 MATCH_PARENT [重复]【英文标题】:FILL_PARENT and MATCH_PARENT [duplicate] 【发布时间】:2012-04-14 12:24:42 【问题描述】:现在我在整个应用程序中都使用 MATCH_PARENT。 我决定让 android 2.1 用户可以使用该应用,但 MATCH_PARENT 直到 Android 2.2 才引入
如果我希望我的应用在 Android 版本为 2.2 及更高版本时使用 MATCH_PARENT 但如果它是 2.1 则使用 FILL_PARENT(或者如果我决定稍后向他们打开它,则使用更低版本),我应该如何执行此操作?
【问题讨论】:
【参考方案1】:FILL_PARENT
和MATCH_PARENT
是同一个东西,如果用户拥有的版本是2.2 或更高版本,FILL_PARENT
将自动替换为MATCH_PARENT
。所以最好使用FILL_PARENT
,支持向后兼容。
Android 开发网站上有一个关于此的博客,如果您想了解更多详细信息,希望您能找到它。
【讨论】:
哇,我不知道它会自动替换。我想如果它被贬低,你应该不惜一切代价避免它。谢谢! @dokgu 是什么让您认为已弃用意味着必须不惜一切代价避免它?如果是这样,就不会有迁移路径。【参考方案2】:他们做了完全相同的事情,只是改变了 2.2+ 的语法。我想说总是使用 FILL_PARENT,这样如果您计划支持 2.1 或更低版本,它就可以一直工作。
【讨论】:
【参考方案3】:即使您支持 Android 2.1 或更低版本,也不应再使用 fill_parent
。您可能知道 Java 编译器会在类文件中将FILL_PARENT
或MATCH_PARENT
等常量静态转换为它们各自的值。这也发生在布局 XML 文件上。
如果您不相信这一点,请在您的模拟器上尝试一下(您应该在 AndroidManifest.xml
中声明 android:minSdkVersion="4"
)。
【讨论】:
以上是关于FILL_PARENT 和 MATCH_PARENT [重复]的主要内容,如果未能解决你的问题,请参考以下文章
不推荐使用的单词是fill_parent和match_parent之间的唯一区别
android中的fill_parent和match_parent有啥区别[重复]
android: 简单的 LinearLayout 和 fill_parent 问题
Android布局中match_parent和fill_parent的差别