更改Safari View Controller Done Button色彩?

时间:2015-11-08 22:26:29

标签: ios swift

我可以通过以下方式更改底部UI栏

UIBarButtonItem.appearance().tintColor = UIColor.redColor()

无法找到如何使用右上角的“完成”按钮。

这是适用于AppDelegate.swift的地方:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.
    UIBarButtonItem.appearance().tintColor = UIColor.redColor()

    return true
}

添加此功能不起作用:

UINavigationBar.appearance().tintColor = UIColor.redColor()

3 个答案:

答案 0 :(得分:2)

要更改de Done按钮颜色以及底部UI栏,您必须设置SFSafariViewController视图的tintColor属性

示例:

let webVC = SFSafariViewController(URL: yourURL)
webVC.view.tintColor = UIColor.redColor()

答案 1 :(得分:0)

Ismael的回答在我的iOS 10中无效。由于iOS 10 SFSafariViewController具有属性preferredControlTintColor来设置按钮的颜色。另一个新属性是preferredBarTintColor fyi。

这是我在Swift 3中的方法:

let svc = SFSafariViewController(url: URL(string: "<YOUR_URL_STRING>")!)

if #available(iOS 10.0, *) {
    svc.preferredControlTintColor = UIColor.red
} else {
    svc.view.tintColor = UIColor.red
}

self.present(svc, animated: true, completion: nil)

答案 2 :(得分:-1)

添加此作品:

UIButton.appearance().tintColor = UIColor.redColor()