- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 WKWebView 在我的 Swift 3+ 应用程序中打开网页。我没有使用 Storyboard或 XIB。
当我的 webview 加载时,由于黑色背景颜色(默认设置),它隐藏了运营商信息、蜂窝网络信号强度指示器(点)、WiFi/4G 连接指示器、时间和电池状态
我想在顶部状态栏下方显示我的 WebView 。我使用 UIApplication.shared.statusBarFrame.height
获得了状态栏的高度(预计为 20,并确认如此)
我怎样才能让两者看起来都很好? (白色背景/透明)这样用户就可以在顶部看到状态栏信息,然后按预期看到 WebView 。
Controller.swift:
import UIKit
import WebKit
class MyWebViewController: UIViewController, WKNavigationDelegate {
var urlString:String? = nil
let myWebView = WKWebView(frame:CGRect(x: 0, y: 32+UIApplication.shared.statusBarFrame.height, width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height-32-UIApplication.shared.statusBarFrame.height))
let button = UIButton(frame: CGRect(x:UIScreen.main.bounds.width - 100,y:50,width:50,height:50))
let navpath = UITextView(frame:CGRect(x: 0, y: UIApplication.shared.statusBarFrame.height, width: UIScreen.main.bounds.width, height: 32))
override func viewDidLoad() {
super.viewDidLoad()
self.view.isOpaque=true
self.view.backgroundColor = UIColor.clear
print("status bar height : \(UIApplication.shared.statusBarFrame.height)")
button.backgroundColor = UIColor.red
button.setTitle("close", for: .normal)
myWebView.navigationDelegate = self
myWebView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
myWebView.load(NSURLRequest(url: targetUrl as URL) as URLRequest)
view.addSubview(myWebView)
button.autoresizingMask = [.flexibleWidth, .flexibleHeight]
navpath.autoresizingMask = [.flexibleWidth, .flexibleHeight]
view.addSubview(navpath)
myWebView.addSubview(button)
}
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
//print(navigationAction.navigationType)
let navReq = navigationAction.request
let targetUrl = navReq?.url
let link = targetUrl?.absoluteString
print("targetURL : \(targetUrl)\n link : \(link)")
navpath.text=link
//self.myWebView.load(navReq)
decisionHandler(.allow)
}
}
旋转时,绿色电池指示灯会隐藏。我也想解决这个问题。导航路径(地址栏文本保持器)和按钮(关闭)也放错了位置,我想我需要自动布局/约束管理器或其他东西。
当前样本加载duckduckgo :
纵向
风景
此外,如果 UITextView 是显示地址栏(网页的 URL)的不错选择,请告诉我,或者我应该使用 UILabel 或其他可能更好的东西,navigationBar?但是,我想这需要 Storyboard/xib。
最佳答案
您可以为您的 View 设置 prefferedStatusBarStyle
: https://developer.apple.com/reference/uikit/uiviewcontroller/1621416-preferredstatusbarstyle
在你的 ViewController 中:
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
如果不同的 View 有不同的状态栏样式,您可以使用 setNeedsStatusBarAppearanceUpdate()
更新它,例如。在 viewDidAppear
中。
关于ios - 如何设置背景色为透明,以显示运营商信息、时间和电池状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42198648/
我开发游戏已经有一段时间了,我开始意识到我的应用程序很快就会耗尽设备电池。我通过 XCode 仪器测量了能量消耗,一般在 17/20 范围内。我有一些背景动画,禁用它们似乎确实有帮助。出于好奇,我使用
我有两个原型(prototype)电池。如果 messagesArray[indexPath.row] 值为“”,则出现一个,如果该值包含字符,则出现另一个。其中一个单元格的行高大于第二个单元格的行高
我有一个弹出窗口,弹出窗口内部是一个相机按钮,我的相机工作正常,但顶部的电池符号与相机重叠,下面是屏幕截图。 如果有人知道答案,我们将不胜感激。 最佳答案 您可以隐藏该 View 的状态栏,这样它就不
有没有办法从 Android SDK 获取电池信息?比如剩余电池生命周期等等?我无法通过文档找到它。 最佳答案 这是一个简单的示例,可以让您了解电池的使用量、电池电压和温度。 将以下代码粘贴到 Act
我想删除状态栏(显示时间和电池状态)。就像在涂鸦跳跃或其他游戏中一样。 我怎样才能做到这一点? 谢谢 :) 最佳答案 http://iphonesdkdev.blogspot.com/2008/06/
已经阅读了关于同一主题的其他 SO 帖子,并且在以下方法之间做出决定: Thread 1与 Thread 2与 simple onLocationUpdate() 有人可以帮助我了解所有这些的利弊吗?
最近 google 推出了推送到设备服务,但它仅适用于 2.2 及更高版本。 我的应用程序中需要一个类似的系统,并且我正在尝试绕过限制。 问题是电池生命周期。由于必须立即通知用户有关服务器上的更改,我
Closed. This question needs to be more focused。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅关注editing this post一个问题。 6
我有两个原型(prototype) TableViewCells。现在,一个只是另一个的复制粘贴。 BasicCell 和 BasicCell2 。我刚刚为 BasicCell2 复制了 BasicC
我目前正在为 iPhone 开发一个聊天客户端。服务器端有一个带有 Socket.IO 的 node.js,在 iPhone 上有一个 Socket.IO 客户端( https://github.co
所以我发现没有公开的方法来获取 watchKit 中的电池电量。 所以没有UIDevice.currentDevice().batteryLevel和WKInterfaceDevice不接缝有货。 在
由于 Google 在其网站上提供了适用于 Android L 的更新 SDK。我一直在尝试测试新的电池历史记录功能。 Google API 概述 website声称该工具在 sdk/tools 下可
我已经安装了全新的 Catalina 和 Android Studio。事实证明,当我启动模拟器时,模拟器进程会占用大量 CPU 周期。查看 adb shell 中的 top,我得到了一些我不理解的进
我修复了 iOS 7 的问题,导航栏是重叠 TableView 。 我用这个代码 //for help navigation bar overlap if ([self respondsToSelec
今天,小爱同学官微发布消息宣布,Redmi 小爱触屏音箱 Pro 正式推出,该机搭载 8 英寸屏幕,配备电池可不用时刻连接电源,售价 499 元,新品将于 9 月 9 日 0 点正式开售。 作
我是一名优秀的程序员,十分优秀!