1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| //初始化UILabel var nameLabel:UILabel = UILabel(frame: CGRect(x:100, y:100, width:200, height:60)) //为了方便看到效果,设置红色背景色 nameLabel.backgroundColor=UIColor.red //添加到视图中 self.view.addSubview(nameLabel) //设置tag值 nameLabel.tag = 68 //通过tag值获取nameLabel nameLabel = self.view.viewWithTag(68) as! UILabel //设置显示文本 nameLabel.text = "swift大法好!" //设置文本字体 nameLabel.font = UIFont.systemFont(ofSize: 18);//使用系统默认字体,默认14号字号 nameLabel.font = UIFont(name: "Helvetica-Bold", size: 18)//指定字体,指定字号 //设置背景色 nameLabel.backgroundColor = UIColor.red//系统色值 nameLabel.backgroundColor = UIColor(red: 125/255.0, green: 125/255.0, blue: 255/255.0, alpha: 1)//使用RGB来设置颜色,rgb范围0-1,所以255颜色值要除以255.0转换成0-1范围内 //设置文本颜色 nameLabel.textColor = UIColor.blue //设置文本字体阴影延时 nameLabel.shadowColor = UIColor.yellow
//设置阴影方向和大小 //(0,-1):上阴隐 //(0,1):下阴隐 //(-1,0):左阴隐 //(1,0):右阴隐 nameLabel.shadowOffset = CGSize(width:1,height:1)
//设置文本字体对齐方式,对齐属性有以下几种,默认是左对齐 // Left : Visually left aligned // Center : Visually centered // Right : Visually right aligned // Justified : Fully-justified. The last line in a paragraph is natural-aligned. // Natural : Indicates the default alignment for script nameLabel.textAlignment = .right
//设置换号模式,换行模式有以下几种,默认是ByWordWrapping // ByWordWrapping /* What to do with long lines */ /* Wrap at word boundaries, default */ // ByCharWrapping /* Wrap at character boundaries */ // ByClipping /* Simply clip */ // ByTruncatingHead /* Truncate at head of line: "...wxyz" */ // ByTruncatingTail /* Truncate at tail of line: "abcd..." */ // ByTruncatingMiddle /* Truncate middle of line: "ab...yz" */ //设置折行方式 nameLabel.lineBreakMode = .byTruncatingHead
//是否能与用户交互,默认是false nameLabel.isUserInteractionEnabled = true;
//文本是否可变,默认是true nameLabel.isEnabled = false;
//文本行数,等于0时没有行数限制 nameLabel.numberOfLines = 2;
//最小字体,行数为1时有效,默认为0.0 nameLabel.minimumScaleFactor = 10.0;
//文本内容自动适应标签大小,默认是false nameLabel.adjustsFontSizeToFitWidth = true
//设置文本高亮 nameLabel.isHighlighted = true;
//设置文本高亮颜色 nameLabel.highlightedTextColor = UIColor.green
//富文本设置 let attributeString:NSMutableAttributedString=NSMutableAttributedString(string: "1234567890123")
//文本0开始5个字符字体HelveticaNeue-Bold,16号 attributeString.addAttribute(NSFontAttributeName, value: UIFont(name: "HelveticaNeue-Bold", size: 16)!, range: NSMakeRange(0, 5))
//设置字体颜色 attributeString.addAttribute(NSForegroundColorAttributeName, value: UIColor.white, range: NSMakeRange(0, 3))
//设置文字背景颜色 attributeString.addAttribute(NSBackgroundColorAttributeName, value: UIColor.green, range: NSMakeRange(3, 3)) nameLabel.attributedText = attributeString
//设置文本基线位置,有以下三种,只有文本行数等于1时有效 //AlignBaselines : 默认值文本最上端于 label 中线对齐 //AlignCenters : 文本中线于 label 中线对齐 //None : 文本最低端与 label 中线对齐 nameLabel.baselineAdjustment = .alignCenters let textString = "swift大法好!"
//固定宽度,来计算自适应的高度 let size1:CGSize = textString.textSizeWithFont(font: UIFont.systemFont(ofSize: 14), constrainedToSize: CGSize(width:200, height:CGFloat(MAXFLOAT))) print("固定宽度200时,文本的区域为:\(size1)") print("固定宽度200时,文本的高度是:\(size1.height)")
//不限制宽度,自适应文本之后,计算文本的长度 let size2:CGSize = textString.textSizeWithFont(font: UIFont.systemFont(ofSize: 14), constrainedToSize: CGSize.zero) print("不限制宽度,文本的区域为:\(size2)") print("不限制宽度,文本的长度是:\(size2.width)")
|