这是一个非常简单的问题,但我对IOS dev和Swift完全不熟悉。
我正在尝试添加一个webview并使其填满整个屏幕。
这是我的代码
override func viewDidLoad() {
super.viewDidLoad()
let myWebView:UIWebView = UIWebView(frame: CGRect(x: 0, y: 0, width: 300, height: 300))
self.view.addSubview(myWebView)
let url = URL (string: "https://google.com");
let request = URLRequest(url: url! as URL);
myWebView.loadRequest(request);
}
当我运行应用程序时,只会出现一个白色屏幕。我可以将html加载为字符串(loadHTMLString)
所以2个问题
答案 0 :(得分:2)
试试这个。
<div class="row contact-form">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<form class="form-horizontal">
<div class="form-group">
<label class="control-label">Full Name :</label>
<div class="">
<input type="text" class="form-control" />
</div>
</div>
<div class="form-group">
<label class="control-label">Subject :</label>
<div class="">
<textarea class="form-control"></textarea>
</div>
</div>
<div class="form-group">
<button class="btn btn-success">Submit</button>
</div>
</form>
</div>
</div>
答案 1 :(得分:0)
我运行你的代码没有错。
除了框架
您需要的更改 -
let myWebView:UIWebView = UIWebView(frame: self.view.frame)
如果您无法从网址加载
,请检查您的互联网连接webView:didFailLoadWithError
实现此功能以检查您将来遇到的任何错误
答案 2 :(得分:0)
发生这种情况因为您尚未将myWebView
添加到view
。
override func viewDidLoad() {
super.viewDidLoad()
let myWebView:UIWebView = UIWebView(frame: CGRect(x: 0, y: 20, width: self.view.frame.width, height: self.view.frame.height))
self.view.addSubview(myWebView)
let request = URLRequest(url: URL(string: "https://google.com")!)
myWebView.loadRequest(request)
}
答案 3 :(得分:0)
Hear is your answers of two questions
**1.How do I get the web view to get fullscreen size?**
**Ans**: let myWebView:UIWebView = UIWebView(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.view.frame.size.height))
**2 Why can't I load a url - I only get the white screen**
**Ans**:
let myWebView:UIWebView = UIWebView(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.view.frame.size.height))
let url = URL (string: "https://google.com");
let request = URLRequest(url: url! as URL);
myWebView.loadRequest(request)
self.view.addSubview(myWebView)
Load request before adding to self.view like above code
答案 4 :(得分:0)
完成webview加载后,将您的网页浏览量调整为内容
//MARK: - WebView Delegate Method
func webViewDidFinishLoad(_ webView: UIWebView) {
var frame = self.webView.frame
frame.size.height = 1
self.webView.frame = frame
let fittingSize = self.webView.sizeThatFits(CGSize.zero)
frame.size = fittingSize
self.webView.needsUpdateConstraints()
self.webView.frame.size.height = fittingSize.height
self.webView.scrollView.isScrollEnabled = false
}
答案 5 :(得分:-1)
您已经使用固定的高度和宽度启动了myWebView,即300.尝试
let frame = self.view.frame
let width = frame.width
let height = frame.height
let myWebView:UIWebView = UIWebView(frame: CGRect(x: 0, y: 0, width: width, height: height))
使用storyboard,您可以在viewController中拖放webView并为视图提供约束(顶部:0,右:0,底部:0,左:0),以便您的Web视图将全屏显示。现在将webView的出口扩展到viewController和viewDidLoad。
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view
let url = URL (string: "https://www.simplifiedios.net")
let request = URLRequest(url: URL: url!)
webView.loadRequest(request)
}