ios - swift iOS更大的标题文本具有不同的颜色
问题描述
我正在尝试确定导航栏标题中是否有以下文本 DRN1 黑色的 DRN 和红色的 1
我目前使用以下代码
self.tabBarController?.navigationItem.title = "DRN1"
如果我可以在大标题中包含两行文本,就像我现在想要播放的第二行一样,那就太好了。
self.tabBarController?.navigationItem.title = "Now Playing"
解决方案
您需要将自定义UIView
和添加UILabel
到NavigationBar
.
代码将如下所示,
let titleView = UIView(frame: CGRect(x: 50, y: 0, width: (self.navigationController?.navigationBar.frame.size.width ?? 200) - 125, height: self.navigationController?.navigationBar.frame.size.height ?? 150)) // Custom title view
let titleLabel = UILabel(frame: CGRect(x: 0, y: 5, width: titleView.frame.size.width, height: titleView.frame.size.height/2))
titleLabel.textAlignment = NSTextAlignment.center
titleLabel.font = UIFont(name: "HelveticaNeue", size: 18.0)
titleLabel.numberOfLines = 0
let titleString = NSMutableAttributedString(string:"DRN1")
let myRange = NSRange(location: 3, length: 1) // range starting at location 3 with a lenth of 1: "Strings"
titleString.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor.red, range: myRange) // MultiColor title
titleLabel.attributedText = titleString
titleView.addSubview(titleLabel)
let titleLabel1 = UILabel(frame: CGRect(x: 0, y: titleView.frame.size.height/2, width: titleView.frame.size.width, height: titleView.frame.size.height/2))
titleLabel1.textAlignment = NSTextAlignment.center
titleLabel1.font = UIFont(name: "HelveticaNeue", size: 15.0)
titleLabel1.numberOfLines = 0
titleLabel1.text = "Now Playing"
titleView.addSubview(titleLabel1)
self.navigationItem.titleView = titleView //Add customView to navigationBar
输出将如下图所示,
推荐阅读
- asp.net-core - 即使使用不记名令牌,带有 Azure AD B2C 的 ServiceStack API aspnet 核心也会返回 401 请求
- javascript - 在AngularJS中将嵌入SVG的动态和复杂的html代码转换为PDF
- flutter - Firebase 身份验证!即使我输入非注册用户,我也可以移动到主页
- css - 是否有另一种方法可以使列布局更好地响应?
- java - HTTP GET REQUEST (HTTPURLCONNECTION) set-cookie null (NOT HTTPONLY COOKIE)
- javascript - 如何将数组中的数组拆分为json?地图 Javascript
- laravel - 改变字体粗细也改变 font-family Laravel--dompdf
- makefile - 当通配符是字符串的一部分时,Makefile 中的通配符目标
- java - Itext 7 PDF - 将图像添加到文档不会刷新到磁盘,但会保留在内存中,这与 Itext 5 不同
- laravel - Illuminate\Contracts\Container\BindingResolutionException .Target 类 [MarketsouhaibController] 不存在。拉拉维尔 8