質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

2回答

1874閲覧

WKWebViewが表示されない

tomtom1

総合スコア168

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

1クリップ

投稿2019/07/18 05:27

###実現したいこと
WKWebViewを利用して、アプリ内にウェブを表示させたい。
下記URLに記載のAppleのリファレンスから参考にしたコードで作成。
https://qiita.com/aminosan000/items/ae2e9de0e910af42304d
###エラー
しかし、Buildすると、下記のエラーが発生。
3行目のclass AppDelegate〜、にThread 1: signal SIGABRTというエラー

swift

1import UIKit 2@UIApplicationMain 3class AppDelegate: UIResponder, UIApplicationDelegate 4 5 var window: UIWindow? 6 7 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { 8 // Override point for customization after application launch. 9 return true 10 }

###コード

swift

1import UIKit 2import WebKit 3class ViewController: UIViewController, WKUIDelegate { 4 5 var webView: WKWebView! 6 7 override func loadView() { 8 let webConfiguration = WKWebViewConfiguration() 9 webView = WKWebView(frame: .zero, configuration: webConfiguration) 10 webView.uiDelegate = self 11 view = webView 12 } 13 override func viewDidLoad() { 14 super.viewDidLoad() 15 16 let myURL = URL(string: "https://www.apple.com") 17 let myRequest = URLRequest(url: myURL!) 18 webView.load(myRequest) 19 }}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2019/07/18 07:05 編集

Storyboardは触ってませんか?
guest

回答2

0

WKWebViewの初期化時に frame の部分を .zero にしてしまっているのが問題だと思いました。
Frame は self.view.frame と同じにして addSubView するといかがでしょうか?

swift

1self.webView = WKWebView(frame: self.view.frame, configuration: configuration) 2self.view.addSubview(self.webView)

投稿2019/07/18 07:38

TakuyaAso

総合スコア1361

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ビルド後の初期window設定が必要ですね。

import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate var window: UIWindow? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch.     window = UIWindow() window?.makeKeyAndVisible() window?.rootViewController = UINavigationController(rootViewController: ViewController()) return true }

投稿2019/07/18 06:47

akaakoz

総合スコア183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問