IOS控件-UILabel的使用 及字体样式自定义

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_21153627/article/details/84069916

Label的简单使用

//创建一个label标签  并给它一个显示区域
        let label=UILabel(frame: CGRect(x: 10, y: 100, width: 300 , height: 150  ));
        //设置显示内容 字体 颜色
        label.text="显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容显示的内容"
        label.font=UIFont(name: "Arial", size: 24 );
        label.textColor=UIColor.red;
        //设置居中
        label.textAlignment=NSTextAlignment.center
        //设置背景
        label.backgroundColor=UIColor.brown
        //设置阴影
        label.shadowOffset=CGSize(width: 2, height: 2)
        label.shadowColor=UIColor.lightGray
        //设置标签文字的换行方式为 一空格为界,保留整个单词
        label.lineBreakMode=NSLineBreakMode.byWordWrapping
        //设置标签对象不限制行数
        label.numberOfLines=0;
        self.view.addSubview(label)

字体样式自定义

新建一个MyLabel

//自定义Label的字体样式
class MyLabel: UILabel {
    override func draw(_ rect: CGRect) {
        //重写父类的绘图方法。自定义样式
        //获取上下文
        let context=UIGraphicsGetCurrentContext();
        //设置文字渲染为描边模式
        context?.setTextDrawingMode(CGTextDrawingMode.stroke)
        //设置秒变宽度为2
        context?.setLineWidth(2)
        //  设置描边的顶点连接方式为圆角方式
        context?.setLineJoin(CGLineJoin.round);
        //设置描边颜色为白色
        self.textColor=UIColor.white
        //将文字的描边信息绘制在制定位置上
        super.drawText(in: rect)
        //设置在上下文中,文字渲染模式为填充
        context?.setTextDrawingMode(CGTextDrawingMode.fill);
        self.textColor=UIColor.black
        super.drawText(in: rect)
        
        //以空格为界。 并保留正个单词  换行  设置标签对象不限制行数
        
    }
}

在视图中使用

let myLabel = MyLabel();
        myLabel.frame=(CGRect(x: 10, y: 300, width: 300, height: 120   ))
        myLabel.text="自定义label"
        myLabel.textAlignment=NSTextAlignment.center;
        myLabel.font=UIFont(name: "Georgia",size: 30);
        myLabel.backgroundColor=UIColor.purple
        self.view.addSubview(myLabel)

猜你喜欢

转载自blog.csdn.net/qq_21153627/article/details/84069916