- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
当在 AppDelegate
中设置 UIButton.appearance()
时,我正在尝试更改 SFSafariViewController
中导航栏的色调.
例如:
AppDelegate
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Here is the global setting that I want to override in the
SafariViewController
UIButton.appearance().tintColor = UIColor.green
}
SFSafariViewController
override func viewDidLoad() {
super.viewDidLoad()
// This will change the toolbar tint but not the Done button or the
website name in the "navigation" section
preferredControlTintColor = UIColor.white
}
但是,“完成”按钮和网站名称的颜色仍然是绿色。
我还尝试覆盖 App Delegate 中的对象。它们都不起作用。
App Delegate(也在 didFinishLaunchingWithOptions
中)
// These are attempts to override the tint set above. None seem to work.
UIButton.appearance(whenContainedInInstancesOf: [SFSafariViewController.self]).tintColor = UIColor.white
UIBarButtonItem.appearance(whenContainedInInstancesOf: [SFSafariViewController.self]).tintColor = UIColor.white
UINavigationBar.appearance(whenContainedInInstancesOf: [SFSafariViewController.self]).tintColor = UIColor.white
我还尝试在 Safari View Controller 本身中设置 View 的色调,但它不会为导航栏着色。
SFSafariViewController(也在 viewDidLoad
中)
// This can be seen by bringing up an alert like in a peek
view.tintColor = UIColor.purple
这是用 Swift 3.0 编写并在 Xcode 8.1 中测试的。
我已经在 github 上发布了一个示例项目.
如有任何帮助,我们将不胜感激。谢谢。
(选择颜色用于测试目的。)
最佳答案
我认为我找到的唯一方法是在适当的位置使用您在 AppDelegate
中编写的相同代码。
关于展示 safari Controller
//Just before presenting the Safari Controller, change the color to red. It will make the Done button color to red.
UIButton.appearance().tintColor = UIColor.red
let controller = StyledSafariViewController(url: appleUrl)
present(controller, animated: true, completion: nil)
并且在SafariController类的viewWillDisappear
方法中
再次让你的按钮颜色全局化
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
//resetting your button color
UIButton.appearance().tintColor = UIColor.green
}
关于ios - 在 AppDelegate 中设置 UIButton 外观时如何更改 SafariViewController 中导航栏的色调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40323858/
我有一个仅处于纵向模式的 ViewController。它提供了一个 SafariViewController。是否可以将 SafariViewController 的方向更改为横向,从而保持 Vie
在我的 SpriteKit 游戏中,都是横向的,我展示了一个 SafariViewController。 func showSafariViewController(forURL url: Strin
我有一个带有一些 TableView Controller 的应用程序。在每个单元格的最后一个我有一个不同的网址。然后我决定插入 SafariVC,但发生的情况是它就像作为 FirstResponde
在我的应用程序中,我们使用 Segpay 进行支付,没有合适的 SDK 可以集成,然后我们从支持的 URL 中创建 URL 并在 SafariViewController 中打开它。 当用户成功完成付
我正在使用 SafariViewController 来显示网页,而不是我从我的应用程序的 NavigationController 推送的默认“完成”按钮来保留我的导航堆栈和后退箭头.但是,我需要隐
我在使用 Swift 2 构建的 iOS 9 应用程序中使用 SFSafariViewController。 我正在尝试打开一个 URL,但由于某种原因失败了。我试过的所有其他 URL 都有效,除了这
我非常新,遵循 Apples 网站上的 swift 入门指南。 我正在尝试创建一个选项卡式应用程序,每个选项卡都是一个价格范围的礼物,每个礼物都是一个带有自己的图像和标签的 tableviewcell
我正在使用 swift 学习 ios 开发,并且正在使用 appauth pod 实现身份验证。我的问题是:是否可以自定义用于登录的 safariviewcontroller?有一些 swift 的示
我想知道是否有办法通过 SafariViewController 安装配置文件(.mobileconfig)。我知道只有 Mail.app 和 Safari.app 有这样做的权限。 因此,如果 Sa
我对有问题的库(Keycloak)提出了类似的问题,但我觉得它实际上可能与库外的代码有关。 我正在尝试将 Safari View Controller 与 Aerogear OAuth2 结合使用,以
Apple 今天拒绝了我的应用程序,建议我不应该强制我的用户使用 Safari 访问我的网页。他们建议使用 iOS9 中新增的 SafariWebController。我去寻找指导,只找到了 Swif
对于网络应用程序,有没有办法(客户端或服务器端)区分来自 MobileSafari 和 SafariViewController(嵌入在任何第 3 方应用程序中)的请求? 我需要这个,因为 Safar
尝试将 Facebook OAuth 与 SafariViewController 结合使用。首先,我用 SafariViewController 打开 authURL,如果用户在 Safari 上登
ChromeCustomTabs 使用 Chrome,SafariViewController 使用 Safari。有没有华为(华为浏览器)的替代品。我可以将华为浏览器用作应用内浏览器吗? 最佳答案
我将 Facebook Login 附加到用 Swift 编写的 iOS 应用程序中,在实现一些内容后,我第一次收到有关打开 Facebook 应用程序的对话框(就像 iOS 中的平常一样),我同意了
当在 AppDelegate 中设置 UIButton.appearance() 时,我正在尝试更改 SFSafariViewController 中导航栏的色调. 例如: AppDelegate f
刚刚发现加载嵌入图像的 HTML 字符串的 UIWebView 无法在 iOS9(GM 种子)上正常显示图像,而之前在 >iOS8。 观看 WWDC SafariViewController 视频后
我正在尝试实现 App Invites来自 Facebook 的功能,我想让我的用户重定向到本地 Facebook 应用程序(如果安装在用户的设备上)。 然而,尽管 Facebook Native 应
我是一名优秀的程序员,十分优秀!