如何在turbolinks-ios中设置背景颜色?
How to set the background color in turbolinks-ios?
我正在试验 turbolinks-ios adapter for turbolinks 5。
显然,VisitableView
的背景颜色是白色。但是当 web 应用程序的背景颜色不是白色时,turbolinks 的过渡看起来不太好:当单击一个 link 时,背景变白并一次变回所需的背景颜色内容已加载。
显而易见的解决方案是设置 iOS 应用程序的背景颜色,但如何设置?
演示应用程序
Turbolinks for iOS 有一个演示应用程序,如果可以更轻松地回答问题,可以用作示例上下文。
可在此处找到演示应用程序:
https://github.com/turbolinks/turbolinks-ios/tree/master/TurbolinksDemo
这确实有效:
在ApplicationController
's presentVisitableForSession()
中设置visitable.visitableView.backgroundColor
.
例如:
// ApplicationController.swift
class ApplicationController: UINavigationController {
// ...
func bgColor() -> UIColor? {
return UIColor(red: 0, green: 103/255, blue: 170/255, alpha: 1)
}
private func presentVisitableForSession(session: Session, URL: NSURL, action: Action = .Advance) {
let visitable = MainViewController(URL: URL)
visitable.visitableView.backgroundColor = bgColor() // <-- ADD THIS LINE
if action == .Advance {
pushViewController(visitable, animated: true)
} else if action == .Replace {
popViewControllerAnimated(false)
pushViewController(visitable, animated: false)
}
session.visit(visitable)
}
}
我正在试验 turbolinks-ios adapter for turbolinks 5。
显然,VisitableView
的背景颜色是白色。但是当 web 应用程序的背景颜色不是白色时,turbolinks 的过渡看起来不太好:当单击一个 link 时,背景变白并一次变回所需的背景颜色内容已加载。
显而易见的解决方案是设置 iOS 应用程序的背景颜色,但如何设置?
演示应用程序
Turbolinks for iOS 有一个演示应用程序,如果可以更轻松地回答问题,可以用作示例上下文。
可在此处找到演示应用程序: https://github.com/turbolinks/turbolinks-ios/tree/master/TurbolinksDemo
这确实有效:
在ApplicationController
's presentVisitableForSession()
中设置visitable.visitableView.backgroundColor
.
例如:
// ApplicationController.swift
class ApplicationController: UINavigationController {
// ...
func bgColor() -> UIColor? {
return UIColor(red: 0, green: 103/255, blue: 170/255, alpha: 1)
}
private func presentVisitableForSession(session: Session, URL: NSURL, action: Action = .Advance) {
let visitable = MainViewController(URL: URL)
visitable.visitableView.backgroundColor = bgColor() // <-- ADD THIS LINE
if action == .Advance {
pushViewController(visitable, animated: true)
} else if action == .Replace {
popViewControllerAnimated(false)
pushViewController(visitable, animated: false)
}
session.visit(visitable)
}
}