与UIView外观相关的属性:
backgroundColor:背景颜色
hidden属性:是否隐藏
alpha属性:透明程度
opaque属性:是否不透明
clipsToBounds:是否剪裁超出边界的部分
layer属性:渲染视图的CA层
设置视图尺寸位置的属性:
frame属性:视图相对于窗口的坐标和尺寸
bounds属性:视图相对于自己坐标和尺寸
center属性:视图的中心点
管理视图层次结构的属性和方法:
window属性:视图所在的窗口对象
superview属性:当前视图的父视图
subviews属性:视图的直接子视图
addSubview:方法:添加子视图
removeFromSuperview:方法:将视图从父视图中移除
bringSubviewToFront:方法:将指定的子视图移到层次的顶层
sendSubviewToBack:方法:将指定的子视图放回到层次的底层
insertSubview:atIndex:方法:在指定的层次位置插入子视图
insertSubview:aboveSubview:方法:在指定的视图层上面添加子视图
insertSubview:belowSubview:方法:在指定的视图层下面添加子视图
exchangeSubviewAtIndex:withSubviewAtIndex:方法:交换两个子视图的层次
isDescendantOfView:方法:判断一个视图是不是另一个视图的子视图
配置视图大小改变时行为的属性和方法:
autoresizingMask属性:当父视图改变大小时子视图如何改变
autoresizesSubviews属性:是否自动调整子视图大小
contentMode属性:视图大小改变时如何呈现其内容
sizeToFit方法:调整视图大小以适应其子视图
说明:当父视图的尺寸发生变化时,子视图应该发生怎样的变化可以通过子视图在父视图中的停靠模式来进行设置,对应的属性叫做autoresizingMask,它可能的取值包括 UIViewAutoresizingNone、UIViewAutoresizingFlexibleLeftMargin、UIViewAutoresizingFlexibleWidth、UIViewAutoresizingFlexibleRightMargin、UIViewAutoresizingFlexibleTopMargin、UIViewAutoresizingFlexibleHeight、UIViewAutoresizingFlexibleBottomMargin。如果希望同时满足多个值可以通过按位或运算来实现。
我们来看一个例子:
UILabel的使用详解
UILabel的常用属性
如果上面看到的API让你感到纠结,那么多内容当然不能靠死记啦,大家可以下载一个叫做Dash的工具来查阅文档,它是一个各种API文档的集大成者,除了查阅文档还可以看到相关内容在Google和StackOverflow上的提问,你肯定会喜欢上这个工具的。
说明:如果无法连接网络下载需要的文档,可以在其他能够联网的机器上将下载好的离线文档复制出来,到不能联网的机器上直接双击安装文档就可以了。需要注意的是,放置离线文档的目录不能有中文和特殊符号,否则文档无法显示。获取下载和获取离线文档的方式如下图所示。
下载文档的位置:
找到离线文档的位置:
UILabel的常用属性:
和文本相关的属性:
text属性:标签上的文字
textColor属性:文字的颜色
textAlignment属性:文字的对齐方式
font属性:字体
lineBreakMode属性:指定如何换行及截断标签上的文字
enabled属性:是否允许绘制标签上的文字
和文字大小相关的属性:
adjustsFontSizeToFitWidth属性:调整文字大小适应标签宽度
adjustsLetterSpacingToFitWidth属性:调整字符间距来适应文字宽度
numberOfLines属性:显示的行数,设置成0表示不限制行数
minimumScaleFactor属性:最小的伸缩因子
minimumFontSize属性:最小字体大小
和阴影效果相关的属性:
shadowColor属性:阴影颜色
shadowOffset属性:阴影偏移量
接下来我们为刚才创建的应用程序添加下面的代码来放置一个标签。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
self.window.backgroundColor = [UIColor orangeColor];
[self.window makeKeyAndVisible];
// 创建标签对象
UILabel *myLabel = [[UILabel alloc] init];
// 设置标签的尺寸和坐标
myLabel.frame = CGRectMake(50, 300, 275, 40);
// 设置标签的字体
myLabel.font = [UIFont systemFontOfSize:36];
// 设置标签的颜色
myLabel.textColor = [UIColor blueColor];
// 设置标签的对齐方式
myLabel.textAlignment = NSTextAlignmentCenter;
// 设置标签上的文字
myLabel.text = @"Hello, world!";
// 将标签添加到窗口上
[self.window addSubview:myLabel];
return YES;
}
应用在模拟器(iPhone 6)上运行效果如下所示: