我有两个字符串构建的文本: A(B)
我想使用两个字符串作为UINavigationItem的标题,但是在截断的情况下我想要只截断A而不是B.
实施例: 我想要的标题是“快速的棕色狐狸跳过(在懒狗身上)”。 屏幕尺寸太小,标题截断,现在“快速棕色狐狸跳跃(超过......”。
我想要的是:“快速的......(在懒狗身上)”
我该怎么做?
答案 0 :(得分:1)
首先检查字符数导航栏允许作为标题而不截断。接下来,在设置标题之前检查总字符串长度是否小于这些字符数。现在根据条件设置组合字符串或仅限B。
答案 1 :(得分:1)
由于xcode无法检测到您想要停止的标题部分以及您想要重新开始的部分,因此您需要自己动手。
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = "Heal the world make it a better place for you and for me and the entire human race"
setNavTitle(title: self.navigationItem.title!)
}
func setNavTitle(title: String)
{
//get the last 10 characters of your title, change the number to your need
let last10 = title.substring(from:title.index(title.endIndex, offsetBy: -14))
//get the first 10 characters of your title, change the number to your need
let first10 = title.substring(to: title.index(title.startIndex, offsetBy: 14))
//concatenate the strings
let title = first10 + " ... " + last10
self.navigationItem.title = title
}