当您知道要为标签设置的确切尺寸时,可以UILabel使用CGRect框架初始化。
let frame = CGRect(x: 0, y: 0, width: 200, height: 21) let label = UILabel(frame: frame) view.addSubview(label)
CGRect frame = CGRectMake(0, 0, 200, 21); UILabel *label = [[UILabel alloc] initWithFrame:frame]; [view addSubview:label];
UILabel当您希望iOS在运行时动态计算其框架时,可以在上添加约束。
let label = UILabel() label.backgroundColor = .red label.translatesAutoresizingMaskIntoConstraints = false view.addSubview(label) NSLayoutConstraint.activate([ //将标签的顶部粘贴到其视图的顶部: label.topAnchor.constraint(equalTo: view.topAnchor) //将标签的左侧粘贴到其视图的左侧 //如果字母是从左到右或在其右侧 //如果字母是从右到左,则进行superview: label.leadingAnchor.constraint(equalTo: view.leadingAnchor) //将标签的底部粘贴到其视图的底部: label.bottomAnchor.constraint(equalTo: view.bottomAnchor) //标签的宽度应等于100点: label.widthAnchor.constraint(equalToConstant: 100) ])
UILabel *label = [[UILabel alloc] init];
UILabel *label = [UILabel new]; label.translatesAutoresizingMaskIntoConstraints= NO; [self.view addSubview label]; // 在前导和尾随添加5个左右填充的水平约束 [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-5-[labelName]-5-|" options:0 metrics:nil views:@{@"labelName":label}]]; // 垂直约束,将使用superView的高度,顶部和底部无填充 [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[labelName]|" options:0 metrics:nil views:@{@"labelName":label}]]
VFL文档可以在这里找到
创建标签后,请确保通过“自动布局”设置尺寸。如果操作不正确,Xcode将显示错误。
您还可以使用Interface Builder通过从“对象库”面板中拖动一个并将其拖放到画布中的视图中UILabel来向Storyboard或.xib文件中添加Label:
使用UILabelaStoryboard或a代替使用编程方式指定框架(位置和大小),.xib您可以使用“自动布局”向控件添加约束。
为了访问此标签,可以从该标签创建storyboard或xib创建IBOutlet。
一旦你添加一个UILabel到你Storyboard或.xib文件可以按它链接到你的代码Control ⌃,然后与鼠标拖动UILabel到你ViewController,或者你可以拖动到代码,同时右键点击它具有相同的效果。
在属性对话框中,可以设置的名称UILabel,并将其设置为strong或weak。有关详细信息strong,并weak,看到这种情况,
另一种方法是通过编程方式使出口如下:
@IBOutlet weak var nameLabel : UILabel!
@property (nonatomic, weak) IBOutlet UILabel *nameLabel;