引入match_parent和弃用fill_parent的原因是什么,因为两者意味着相同的事情。这种改变不会妨碍向后兼容吗?
答案 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或更高级别。因此,您需要更改它。