视图的边距和填充之间的区别是什么?
当前回答
填充 填充在视图内部。例如,如果你给android:paddingLeft=20dp,那么视图内的项目将以20dp宽度从左排列。你也可以使用paddingRight, paddingBottom, paddingTop分别从右边,底部和顶部给出填充。
保证金 边距在视图之外。例如,如果你给android:marginLeft=20dp,那么视图将从左起20dp后排列。
其他回答
边距是指元素之外的额外空间。填充指的是元素内的额外空间。边距是控件周围的额外空间。填充是控件内部的额外空间。
使用白色填充时,很难看到空白和填充的区别,但使用彩色填充时,可以很好地看到它。
填充 填充在视图内部。例如,如果你给android:paddingLeft=20dp,那么视图内的项目将以20dp宽度从左排列。你也可以使用paddingRight, paddingBottom, paddingTop分别从右边,底部和顶部给出填充。
保证金 边距在视图之外。例如,如果你给android:marginLeft=20dp,那么视图将从左起20dp后排列。
有时你可以通过使用填充或边距来达到同样的效果。例子:
假设视图X包含视图Y(也就是:视图Y在视图X内部)。
-View Y的Margin=30或View X的Padding=30将达到相同的结果:View Y的offset为30。
边距在视图内,边距在视图外。填充可用于所有视图。根据视图的不同,边距和边距之间可能存在或可能没有视觉差异。
例如,对于按钮,特征按钮背景图像包括填充,但不包括空白。换句话说,添加更多的填充会使按钮在视觉上看起来更大,而添加更多的边距只会使按钮和下一个控件之间的距离更宽。
另一方面,对于TextViews,填充和边缘的视觉效果是相同的。
页边距是否可用是由视图的容器决定的,而不是视图本身。在LinearLayout中支持边距,在AbsoluteLayout(现在已经过时了)中不支持边距。
下面的图片将让你了解填充和空白-
推荐文章
- 如何改变菜单项的文本颜色在安卓?
- Android选择器和文本颜色
- 视图绑定-我如何获得包含布局的绑定?
- 在Android Studio中改变矢量资产的填充颜色
- 在构建中编写注释的语法是什么?gradle文件?
- 如何以编程方式添加按钮色调
- 用Android Studio进行调试永远停留在“等待调试器”状态
- Openssl不被视为内部或外部命令
- 无法执行dex:在Eclipse中超过GC开销限制
- 如何以编程方式将视图添加到视图
- 单击url会打开默认浏览器
- 使用Retrofit刷新OAuth令牌,而不修改所有调用
- 多个dex文件定义了landoid /support/v4/accessibilityservice/AccessibilityServiceInfoCompat
- 如何获得动作栏的高度?
- 从活动外部调用startActivity() ?