Android fill_parent为match_parent

时间:2011-09-30 09:07:23

标签: android fill-parent

引入match_parent和弃用fill_parent的原因是什么,因为两者意味着相同的事情。这种改变不会妨碍向后兼容吗?

2 个答案:

答案 0 :(得分:10)

使用match_parent而不是fill_parent不会使生成的APK在旧版本中不可运行,因为在生成的APK中,match_parent和fill_parent的出现将替换为相应的常量值,在这种情况下相同(均为-1) ,所以同样的APK也可以在旧版本的Android平台上运行。

但是,如果您在切换到旧版本(版本7或更低版​​本)时编译代码,那么您将收到编译错误(因为版本7或更低版​​本中未定义match_parent)。

答案 1 :(得分:4)

Android Doc说:

  

FILL_PARENT(在API级别8及更高级别重命名为MATCH_PARENT),这意味着视图要与其父级一样大(减去填充)

     

fill_parent:视图应该与其父视图一样大(减去填充)。   从API级别8开始不推荐使用此常量并将其替换   by match_parent。

所以它们是相同的,因为它们的值都是-1。但如果您担心向后兼容性,可以访问:platfrom version

这可以让您更好地了解何时应将fill_parent更改为match_parent。 截至目前,似乎50%的人正在使用API​​级别8或更高级别。因此,您需要更改它。