我对两个XML财产有点困惑:match_parent和fill_parent。看起来两者都是一样的。它们之间有什么区别吗?
当前回答
FILL_PARTENT在API级别8和MATCH_PARENTuse高级API中已弃用
其他回答
FILL_PARTENT在API级别8及更高版本中被弃用,在更高版本中将其重命名为MATCH_PARENT
两者都是相同的FILL_PARTENT和MATCH_PARENT,FILL_PPARENT用于低于API级别8的较低版本,MATCH_PATENT用于高于8的较高API级别。
FILL_PARTENT(在API级别8及更高版本中重命名为MATCH_PARENT),这意味着视图希望与其父视图一样大(减去填充)
fill_parent:视图应该和其父视图一样大(减去填充)。从API Level 8开始,此常量已弃用,并由match_parent替换。
有关详细信息,请访问此页面
谷歌更改了名称以避免混淆。
旧名称填充父项的问题在于它暗示它会影响父项的维度,而匹配父项更好地描述了结果行为-将维度与父项匹配。
这两个常数最终都解析为-1,因此在应用程序中会产生相同的行为。具有讽刺意味的是,为了澄清问题而进行的名称更改似乎增加了混乱,而不是消除了混乱。
两者具有相似的功能,唯一的区别是fill_parent在API级别8之前使用,match_parent在API级别或更高级别之后使用。
对我来说,填充父项和匹配父项执行相同的功能,仅限于:
填充父项:在API 8之前使用
匹配父项这是从API 8中使用的+两者的功能在填充旁边填充父视图
在功能上没有区别,Google只是将名称从API级别8(Android 2.2)中的fill_parent更改为match_parent。出于兼容性原因,fill_parent仍然可用。
LayoutParams.FILL_PARTENT和LayoutParams.MATCH_PARENT都具有值-1。不确定是什么促使谷歌从填充父项更改为匹配父项:)
由于大多数手机都是>=Android 2.2,因此您应该使用Match Parent以获得未来的兼容性。。。不确定他们何时会停止旧的Fill Parent常量!
推荐文章
- Android Studio, logcat在应用程序关闭后清理
- 在android中从上下文获取活动
- 无法解析主机"<URL here>"没有与主机名关联的地址
- getActivity()在Fragment函数中返回null
- 按钮背景是透明的
- 在Mac OS X上哪里安装Android SDK ?
- 我如何获得图像缩放功能?
- 在Android应用程序中显示当前时间和日期
- BottomSheetDialogFragment的圆角
- 在应用程序启动时出现“无法获得BatchedBridge,请确保您的bundle被正确打包”的错误
- 我如何改变默认对话框按钮的文本颜色在安卓5
- 更改单选按钮的圆圈颜色
- 如何在android中复制一个文件?
- adb找不到我的设备/手机(MacOS X)
- 如何在新的材质主题中改变背面箭头的颜色?