zoukankan      html  css  js  c++  java
  • [Xcode 实际操作]四、常用控件-(5)UILabel文本标签自定义文字样式

    目录:[Swift]Xcode实际操作

    本文将演示给标签对象添加描边效果,在项目文件夹上,点击鼠标右键菜单,

    选择【Create File】->【Cocoa Touch Class】->【Next】->

    【Class】:MyLabel

    【Subclass of 】:UILabel

    【Language】:Swift

    ->【Next】->【Create】

     1 import UIKit
     2 
     3 class MyLabel: UILabel {
     4 
     5     //首先重载父类的绘图方法,
     6     //这样就可以从底层来定义标签的形状
     7     override func draw(_ rect: CGRect) {
     8         // Drawing code
     9         //获取当前图形环境的上下文
    10         let context = UIGraphicsGetCurrentContext()
    11         //设置在上下文中,文字的渲染模式为描边模式
    12         context?.setTextDrawingMode(CGTextDrawingMode.stroke)
    13         
    14         //设置文字描边的边框宽度为2
    15         context?.setLineWidth(2)
    16         //设置文字描边的顶点连接方式为圆角方式
    17         context?.setLineJoin(CGLineJoin.round)
    18         //设置文字的描边颜色为白色
    19         self.textColor = UIColor.white
    20         //将文字的描边信息,绘制在指定区域内
    21         super.drawText(in: rect)
    22         
    23         //设置在上下文中,文字渲染模式为填充
    24         context?.setTextDrawingMode(CGTextDrawingMode.fill)
    25         //创建一个颜色为黑色的颜色对象
    26         let textColor = UIColor.black
    27         //设置文字颜色为黑色
    28         self.textColor = textColor
    29         //将文字的填充信息,绘制在指定区域内
    30         super.drawText(in: rect)
    31     }
    32 }

    在项目导航区,打开视图控制器的代码文件【ViewController.swift】

    现在开始添加自定义标签,并添加到当前视图控制器的根视图

     1 import UIKit
     2 
     3 class ViewController: UIViewController {
     4 
     5     override func viewDidLoad() {
     6         super.viewDidLoad()
     7         // Do any additional setup after loading the view, typically from a nib.
     8         //初始化一个自定义标签对象
     9         let label = MyLabel()
    10         //设置自定义标签的位置在(120,180),尺寸为(240,120)
    11         label.frame = CGRect(x: 120, y: 180,  240, height: 120)
    12         //设置自定义标签的文字内容
    13         label.text = "Enter >"
    14         //设置自定义标签对象的字体和大小
    15         label.font = UIFont(name: "Georgia", size: 56)
    16         
    17         //将自定义标签对象,添加到当前视图控制器的根视图
    18         self.view.addSubview(label)
    19         //设置视图的背景颜色为紫色,以突出显示标签中的文字内容
    20         self.view.backgroundColor = UIColor.purple
    21     }
    22 
    23     override func didReceiveMemoryWarning() {
    24         super.didReceiveMemoryWarning()
    25         // Dispose of any resources that can be recreated.
    26     }
    27 }
  • 相关阅读:
    AdvDataList分页 例码
    问一个关于生成静态页面的问题
    使用XMLDataSource简单实现多级下拉菜单
    简单的封装一个HTML 弹出对话框的空间
    JS 语言强大, 动态修改标准库
    Eclipse IDE 学习
    分布式程序的开发
    Http request Post pk Put
    Forward: X Forwarding with Putty on Windows
    转载: 颠覆了对于design 的认识
  • 原文地址:https://www.cnblogs.com/strengthen/p/10014781.html
Copyright © 2011-2022 走看看