cuốn sách gpt4 ai đã làm

ios - Swift:(预)从initialViewController加载UIWebView

In lại Tác giả: Walker 123 更新时间:2023-11-29 01:00:06 26 4
mua khóa gpt4 Nike

我有两个 ViewController。初始 ViewController 是输入和存储 URL 的地方。此初始 ViewController 的 viewDidLoad 还应该在应用程序启动时开始加载第二个 ViewController 的 Web 内容。

第二个ViewController仅包含一个WebView。

当我启动应用程序时,成功调用了 secondaryViewController 中的 func loadWebView 。但是,一旦我单击 goButton 即可显示第二个ViewController。结果是空的。 (在第二个ViewController viewDidLoad中本地调用func loadWebView将成功加载网站。)

我认为我实例化 secondaryViewController 的方式以及调用它的方式做错了。我想我正在创建两个不同的 secondaryViewController 实例并调用空的实例。我很高兴收到任何指示。

编辑:我希望应用程序在初始 ViewController 打开后立即开始加载网站。不仅是当我访问 SecondViewController 时。

EDIT2:问题可能是初始调用 webView.loadRequest(request) 的数据没有保存到 webView-subview 中吗?第二次调用 webView 时出现空白,因为没有保存数据。有谁知道如何从 loadRequest 调用中保存/加载数据?

EDIT3:忘记 EDIT2。阅读解决方案正确答案下方的评论!

初始 View Controller :

var svc: UIViewController = UIViewController()

override func viewDidLoad() {
loadWebView("https://www.google.com")
}

func loadWebView(URLString:String) {

if let theRequestURL = NSURL (string: URLString) {
let theRequest = NSURLRequest (URL: theRequestURL)

let vc: secondViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("secondViewController") as! secondViewController

vc.loadWebView(theRequest)
svc = vc
}
}

@IBAction func goButton(sender: AnyObject) {
self.presentViewController(svc, animated: false, completion: nil)
}

第二个 View Controller :

class secondViewController: UIViewController, UIWebViewDelegate {
@IBOutlet var webView: UIWebView! = UIWebView()

func loadWebView(request : NSURLRequest) {
webView.loadRequest(request)
}
}

câu trả lời hay nhất

我不太确定 secondViewController 的两个实例,但可能是 webView 的两个实例...假设您在 Storyboard 中定义了一个。实例化 IBOutlet 是异常的/错误的。

我建议将 loadWebView 变成类似 storeRequestURL 的东西。将请求保存到实例变量,然后在 secondViewController của viewWillAppear(或者可能是 viewDidLoad)中调用 loadRequest.

关于ios - Swift:(预)从initialViewController加载UIWebView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37116950/

26 4 0
Walker 123
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress