let barbutton = UIbarbuttonItem.appearance()barbutton.setTitleTextAttributes([NSFontAttributename: UIFont(name: "AvenirNext",size: 15],forState: UIControlState.normal)
但是它给我一个编译器错误说:
无法使用参数列表类型'($T7,forState:UIControlState)调用’init’
我不知道这是什么意思
我也试过
barbutton.TitleTextAttributesForState(UIControlState.normal)= [NSFontAttributename …]
但它似乎是不可分配的
我该怎么做?非常感谢!
解决方法 UIFont的初始化程序返回一个可选的,因为它可能会由于拼写错误的字体名称而失败.你必须解开它并检查:
if let Font = UIFont(name: "AvenirNext",size: 15) { barbutton.setTitleTextAttributes([NSFontAttributename: Font],forState: UIControlState.normal)}
更新为Swift 3
if let Font = UIFont(name: "AvenirNext",size: 15) { barbutton.setTitleTextAttributes([NSFontAttributename:Font],for: .normal)}总结
以上是内存溢出为你收集整理的ios – 在Swift中自定义UIBarButtonItem全部内容,希望文章能够帮你解决ios – 在Swift中自定义UIBarButtonItem所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)