EALayout 第一节 控件基本布局
来源:互联网 发布:windows10 内置ubuntu 编辑:程序博客网 时间:2024/05/29 14:13
https://github.com/easycodingTop/EALayoutLiteForOC
QQ群:454686295
====================================================
我们先着重讲 布局 相关的知识吧, 属性后面教程再讲
如何描述一个控件:
{
"class":"UIView", ------------> class 对应 类名,也可以是自定义的类, Swift自定义的控件,需要使用 @objc(自定义控件)
"backgroundColor":"blueColor", ---------------> 设置背景色 为 蓝色. 当然 "blueColor" 也可写作 "#FF0000FF" "0xFF0000FF" [0,0,255]
"layout":{"s":"l=10,t=100,w=100,h=100"} ---------------> 设置控件的 布局。 别急,布局不能就这么简单就结束的,不会让你白脱裤子的。
}
layout 支持属性
l ==>left 左对齐或左偏移
c ==>center 水平居中
r ==>right 右
t ==>top 顶部
m ==>middle 垂直居中
b ==>bottom 底部
w ==>width 宽度
h ==>height 高度
=======================================================================================
{"s":"l=20,t=100,w=100,h=100"}
表示与父view的关系为:
l=20 左边距离20。 当为l=0时,也可以简写为 l (l=0 等同于 l), c,r,t,m,b 也类似 =0时可以省略 =0. w,h除外
t=100 顶部距离100
w=100 宽度100
h=100 高度100
========================================================================================
{"s":"l=20,r=100,t=100,h=100"}
表示与父view的关系为:
l=20 左边距离20
r=100 表示距右边100. 那么 宽度 = 父view宽度 - left - right , 那么不同屏幕宽度可以适配了
t=100 顶部距离100
h=100 高度100
========================================================================================
{"s":"l=20,r=100,b,h=100"}
表示与父view的关系为:
l=20 左边距离20。
r=100 表示距右边100
b 与 b=0 等同 。 即与底部距离为0
h=100 高度100
========================================================================================
{
"class":"UILabel",
"backgroundColor":[0,255,0,0.8],
"textColor":"blackColor",
"font":18,
"text":"自动计算大小",
"layout":{"s":"l=50,t=100"}
}
UILabel 可以通过 font 以及 text 自己计算出大小
========================================================================================
{
"class":"UILabel",
"backgroundColor":[0,255,0,0.8],
"textColor":"blackColor",
"text":"自动计算大小",
"font":18,
"textAlignment":"center",
"layout":{"s":"l=50,t=100,r=20"}
}
如果通过 layout可以算出大小,那么优先使用计算出来的大小,这里 l=50,r=20 可以算出宽度。 textAlignment 设置了文字居中
========================================================================================
{
"class":"UILabel",
"backgroundColor":[0,255,0,0.8],
"textColor":"blackColor",
"text":"可变为多行文字,根据屏幕宽度可以自动适配行数",
"numberOfLines":0,
"font":18,
"layout":{"s":"l=10,t=100,r=10"}
}
numberOfLines 设置为0 ,表示可以多行。 这里layout没有指定UILabel的高度,这里指定了l=10, r=10, 可以算出宽度。宽度这里适配了
所以 iPhone 4s、iPhone 6、iPhone 6 Plus 不同屏幕显示效果就不一样了
========================================================================================
敬请关注下一节:
====================================================
https://github.com/easycodingTop/EALayoutLiteForOC
QQ群:454686295
====================================================
- EALayout 第一节 控件基本布局
- EALayout 第二节 多控件依赖布局
- EALayout 第三节 依赖多个控件布局
- EALayout 第六节 LinerLayout线性布局器
- EALayout 第七节 控件属性设置
- EALayout 第七节 控件属性设置
- 控件与基本布局
- EALayout 第四节 引用另一个控件的位置属性
- 第一节:网页基本标签
- 自定义控件-----(第一节)
- android线性布局和基本控件属性
- android基础-基本常用控件-布局篇
- 基本的UI控件和布局文件
- Android 常用布局及基本UI控件
- 安卓基本控件和布局使用
- Android02_Android常用布局及基本UI控件
- Android 常用布局及基本UI控件
- 两大布局和基本控件
- leetcode[24]:Swap Nodes in Pairs
- python实现ftp上传下载文件
- java多线程并发——Exchanger 两个任务之间交换对象
- POJ 2562 Primary Arithmetic 进位统计
- vector
- EALayout 第一节 控件基本布局
- java数据结构------二叉树
- UVA 340 Master-Mind Hints
- GDB命令集收藏
- 002《算法的乐趣》——分治法
- 软工视频之(1-3章)
- DOM扩展_选择符API
- HDUOJ Number Sequence 题目1005
- Altuim designer 导入PCB,出现错误some nets were not able to be matched