`

布局

 
阅读更多
padding:描述控件里面的内容与控件的关机,内边距;有四个方向属性;paddingleft......

layout_margin:描述控件之间的位置关系,外边距;有四个方向属性;layout_margingleft.....



gravity:设置该控件的对齐方式;

layout_gravity:设置它在父控件中的对齐方式;



尺寸:





FrameLayout(框架布局)



LinearLayout (线性布局)

linearLayout中有一个重要的属性 android:layout_weight="1",这个weight在垂直布局时,代表行距;

                               水平的时候代表列宽;weight值越大就越大。

属性值为具体的像素值,如30dip,40px (建议用dip)
android:layout_marginBottom 离某元素底边缘的距离
android:layout_marginLeft 离某元素左边缘的距离
android:layout_marginRight 离某元素右边缘的距离
android:layout_marginTop 离某元素上边缘的距离


AbsoluteLayout(绝对布局):

犹如div指定了absolute属性

用X,Y坐标来指定元素的位置

android:layout_x="20px"

android:layout_y="12px"



RelativeLayout(相对布局),

android:layout_above=“@+id/给定的ID”    将该控件的底部至于给定ID的控件之上

android:layout_below                     将该控件的顶部至于给定ID的控件之下
android:layout_toLeftOf                 将该控件的右边缘和给定ID的控件的左边缘对齐
android:layout_toRightOf               将该控件的左边缘和给定ID的控件的右边缘对齐

android:layout_alignBaseline    该控件的baseline和给定ID的控件的baseline对齐
android:layout_alignBottom     底部边缘与给定ID控件的底部边缘
android:layout_alignLeft          左边缘与给定ID控件的左边缘对齐
android:layout_alignRight        右边缘与给定ID控件的右边缘对齐
android:layout_alignTop          将顶部边缘与给定ID控件的顶部对齐


android:alignParentBottom           如果该值为true,底部和父控件的底部对齐
android:layout_alignParentLeft     如果该值为true,左边与父控件的左边对齐
android:layout_alignParentRight   如果该值为true,右边与父控件的右边对齐
android:layout_alignParentTop     如果该值为true,顶部与父控件的顶部对齐

android:layout_centerHorizontal    如果值为真,该控件将被至于水平方向的中央
android:layout_centerVertical       如果值为真,该控件将被至于垂直方向的中央
android:layout_centerInParent      如果值为真,该控件将被至于父控件水平方向和垂直方向的中央


TableLayout(表格布局) 。

表格布局类似Html里面的Table。每一个TableLayout里面有表格行TableRow,TableRow里面可以具体定义每一个元素,设定他的对齐方式 android:gravity="" 。



TableLayout置底,TableRow在TableLayout的上面
Button、TextView等控件就在TableRow之上
TableLayout之上也可以单独放控件

android:collapseColumns=0,1:以第0行为序,隐藏指定的列:隐藏第0列,第一列;
android:shrinkColumns:将指定的列设为可收缩的列,该列会收缩至适应屏幕;
android:stretchColumns:将指定的列设为可伸展的列,该列会尽量伸展以填满空间
android:layout_column:控件在TableRow中所处的列
android:layout_span:控件所跨越的列数



这五个布局元素可以相互嵌套应用,做出美观的界面。



Layout用到的一些重要的属性

android:textSize        指定控件当中字体的大小
android:background      指定该控件所使用的背景色,RGB命名法
android:width           指定控件的宽度
android:height          指定控件的高度

android:layout_width    指定Container组件的宽度
android:layout_height   指定Container组件的高度
android:layout_weight   View中很重要的属性,按比例划分空间

android:sigleLine       如果设置为真的话,则控件的内容在同一行中进行显示
android:scaleType       是控制图片如何resized/moved来匹对ImageView的siz

android:layout_alignWithParentIfMissing   如果对应的兄弟元素找不到的话就以父元素做参照物

android:layout_marginBottom        离某元素底边缘的距离
android:layout_marginLeft          离某元素左边缘的距离
android:layout_marginRight         离某元素右边缘的距离
android:layout_marginTop           离某元素上边缘的距离

EditText的android:hint 设置EditText为空时输入框内的提示信息。



android:scaleType: 是控制图片如何resized/moved来匹对ImageView的size。
ImageView.ScaleType / android:scaleType值的意义区别:
CENTER /center   按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
CENTER_CROP / centerCrop 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
CENTER_INSIDE / centerInside 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
FIT_CENTER / fitCenter 把图片按比例扩大/缩小到View的宽度,居中显示
FIT_END / fitEnd 把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置
FIT_START / fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置
FIT_XY / fitXY 把图片不按比例扩大/缩小到View的大小显示
MATRIX / matrix 用矩阵来绘制,动态缩小放大图片来显示。

分享到:
评论

相关推荐

    Qt动态控件生成并布局

    Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局Qt动态控件生成并布局...

    MFC 控件自动布局

    5. **布局策略**:除了CLayoutView和自定义的CFormView方法外,还可以使用其他布局策略,如网格布局、流式布局或锚点布局。网格布局将控件放置在网格中,调整时按单元格进行;流式布局则按照水平或垂直方向依次排列...

    MFC布局管理器

    布局管理器通过定义不同的布局策略,如网格布局、流式布局、填充分布等,来自动调整控件的布局。在MFC中,通常使用CWnd派生类的成员函数来实现布局,例如SetWindowPos()。 CBoxLayout是MFC中的一种特定布局策略,...

    winform VS窗口布局的框架 灵活拖拽布局

    在Windows Forms(Winform)开发中,创建美观且可自定义布局的用户界面是一项重要的任务。Visual Studio(VS)提供了一种强大的工具,允许开发者构建这样的界面,但是默认的布局管理有时并不能满足所有复杂的需求。...

    40种网页布局源代码

    网页布局是网页设计的核心部分,它决定了网页内容的呈现方式和用户体验。"40种网页布局源代码"是一个集合,提供了40个不同的CSS布局方案,对于初学者来说,这是一个非常宝贵的资源,可以帮助他们理解并掌握CSS在网页...

    Qt的Widgets布局实战例子 经典QT布局例子

    分别是 QVBoxLayout(垂直布局)、QHBoxLayout(水平布局)、QGridLayout(网格布局)、QFormLayout(表单布局)和 QStackedLayout(分组布局)实战例子 除Qt Designer支持可视化设计和布局界面之外,Qt 提供了代码...

    响应式布局小案例

    响应式布局是现代网页设计的关键技术之一,它允许网页在不同设备上,如桌面电脑、平板电脑和手机,自适应地展示内容。本案例聚焦于HTML5中的响应式布局应用,通过实例帮助我们理解如何创建一个能够灵活适应各种屏幕...

    Winform 界面布局详解

    Winform 界面布局详解 Winform 界面布局是指在 Windows 窗体应用程序中对控件的排列和布局,目的是为了让控件在父控件中能够自动地适应大小和位置的变化。Dock 和 Anchor 是两种常用的布局方式,它们可以单独使用,...

    认识Android布局文件

    【Android布局文件详解】 在Android应用开发中,界面设计是一个至关重要的环节,而XML格式的布局文件正是构建这些界面的核心工具。布局文件定义了应用程序界面的结构,包括它所包含的控件、控件间的相对位置以及...

    简单的JSP页面布局

    它可以用来设置字体、颜色、间距等样式属性,同时也可以实现更复杂的布局模式,如流式布局、网格布局和Flexbox布局。通过CSS,我们可以精确控制元素的位置和大小,实现响应式设计,让页面在不同设备上都能良好展示。...

    Android xml布局文件生成工具

    在Android应用开发中,XML布局文件是构建用户界面(UI)的主要方式,它允许开发者以声明式编程的方式定义UI元素的结构和样式。"Android xml布局文件生成工具"是为了解决手动编写XML布局文件繁琐和耗时的问题而设计的...

    基于matlab遗传算法实现车间设备布局界面系统

    标题中的“基于matlab遗传算法实现车间设备布局界面系统”是指使用MATLAB编程语言,结合遗传算法来设计一个用户界面,用于解决车间设备的优化布局问题。遗传算法是一种模拟自然选择和遗传机制的搜索算法,常用于解决...

    QtFlowlayout Qt流式布局器

    QtFlowlayout是一个专门为Qt开发的自定义布局器,它扩展了Qt的标准布局系统,使得在QWidget容器中可以灵活地自动布局子控件。这个库的主要目的是处理那些在大小和数量上变化不定的控件,例如在一个应用中,用户可能...

    css网站布局实录-2

    《CSS网站布局实录》第二版是一本深入探讨CSS在网页布局中的应用的专业书籍。它主要涵盖了以下几个核心知识点: 1. **CSS基础**:书中首先介绍了CSS的基础概念,包括选择器、属性和值,这些都是理解和编写CSS样式的...

    Android开发 相对布局练习

    在Android开发中,布局设计是构建用户界面的关键环节。相对布局(RelativeLayout)是Android提供的一种布局方式,它允许视图相对于其他视图进行定位,从而实现灵活多样的界面设计。本练习项目是一个简单的石头剪刀布...

    微信小程序源码 瀑布流布局(学习版)

    微信小程序源码 瀑布流布局(学习版)微信小程序源码 瀑布流布局(学习版)微信小程序源码 瀑布流布局(学习版)微信小程序源码 瀑布流布局(学习版)微信小程序源码 瀑布流布局(学习版)微信小程序源码 瀑布流布局(学习版)...

    CSS的flex布局.ppt

    网页布局(layout)是CSS的一个重点应用。布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C提出了一...

    SAP 特定用户布局

    "SAP 特定用户布局"是指允许每个用户根据个人需求自定义报表显示方式的功能,使得用户可以根据自己的习惯设定报表的列、排序、过滤等属性。这有助于提高工作效率,减少用户在查看和分析数据时的困扰。 描述中提到的...

    Android 用RecyclerView实现的流式布局,一款针对可拖动Tag的布局

    网上很多流式布局的列子,大部分都不能满足需求,大部分都不能拖动,有的可以拖动但是都是GridView式布局所以不能满足流式布局的基本要求,所以自己封装一个可删除,可添加,长按可以拖动流式布局。 ——————...

    android 中页面布局使用demo

    在Android应用开发中,页面布局是构建用户界面的关键部分,它定义了屏幕元素的排列方式、大小和相互关系。这个“android 中页面布局使用demo”应该是为了帮助开发者深入理解并实践Android中的各种布局管理器。下面...

Global site tag (gtag.js) - Google Analytics