FILL_PARENT和MATCH_PARENT

时间:2012-03-30 19:35:32

标签: android android-layout backwards-compatibility

现在我在整个应用程序中使用MATCH_PARENT。 我决定让Android 2.1用户使用该应用程序,但直到Android 2.2才会引入MATCH_PARENT

如果我希望我的应用在Android版本为2.2或更高版本时使用MATCH_PARENT,但是如果它是2.1(或者如果我决定稍后打开它会更低,则使用FILL_PARENT),我应该怎么做呢?

3 个答案:

答案 0 :(得分:11)

FILL_PARENTMATCH_PARENT是相同的,如果用户拥有的版本为2.2或更高版本FILL_PARENT将自动替换为MATCH_PARENT。因此,最好使用FILL_PARENT来支持向后兼容性 Android开发网站上有一篇关于此的博客,如果您想了解更多详细信息,我希望您能找到它。

答案 1 :(得分:2)

他们做的完全相同,他们只是改变了2.2+的语法。我只是说使用FILL_PARENT总是这样,如果你计划支持2.1或更低,它总能工作。

答案 2 :(得分:2)

即使您支持Android 2.1或更低版本,也不应再使用fill_parent。您可能知道Java编译器会将类FILL_PARENTMATCH_PARENT之类的常量静态转换为类文件中的各自值。这也发生在布局XML文件上。

如果您不相信这一点,只需在模拟器上试用(您应在android:minSdkVersion="4"中声明AndroidManifest.xml)。