2015-01-26 50 views
0

我目前正在尝试一些iOS编程。我决定和Swift一起去。XCode 6 iOS Swift - UIWebView大小不会改变

一切都很好,直到我尝试使用UIWebView它不会将它的大小更改为屏幕大小。我开始在Android上开发应用程序,但是afaik在iOS中没有像相对大小的东西吗?

目前,这是我的代码是什么样子:

import UIKit 

class FirstViewController: UIViewController { 

@IBOutlet weak var mainWebView: UIWebView! 

var urlPath = "http://www.google.com" 


override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 

    loadWebView() 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

func loadWebView() 
{ 
    var newRect = mainWebView.bounds 

    newRect.size.height = self.view.frame.size.height 
    newRect.size.width = self.view.frame.size.width 

    mainWebView.frame.size = newRect.size 

    let requestURL = NSURL(string:urlPath) 
    let request = NSURLRequest(URL: requestURL!) 
    mainWebView.loadRequest(request) 
} 

} 

我试图与上述(给德帧大小的mainWebView不同的方法,但没有工作或许这是与我一时给改变大小的命令我应该改变大小早些时候装载理线

我也试过这样:??

mainWebView.sizeThatFits(self.view.frame.size) 

但是这并没有做任何事情无论是。

我非常感谢所有帮助!

在此先感谢

弗里索

PS。 在这个例子中,我使用的是self.frame.size的值,但在使用例如100 x 100时,它也不会改变尺寸...

+0

您在界面构建器中设置了哪些约束条件? – Woodstock 2015-01-26 20:18:47

+0

'self.view'和'self'的大小是多少? mainWebView'?你假设'self.view'占用屏幕上的所有空间。也许不是? – Emilie 2015-01-26 20:21:00

+0

@Emilie我检查了self.view的值,所以我确定它们与mainWebView值不同。另外,如果我只是使用100x100尺寸分配给mainWebView,仍然没有任何反应。 – 2015-01-26 20:32:12

回答

0

您需要一次设置整个框架。直接设置UIView框架的大小不起作用。

var newRect = mainWebView.frame 
newRect.size.width = self.view.frame.size.width 
newRect.size.height = self.view.frame.size.height 
mainWebView.frame = newRect 
+0

对不起,试了一下。不工作... – 2015-01-26 20:38:30