简介

我今天用Mac升级了XCode到8.1,Swift版本应该到了swift3,按网上的demo写webview的例子,报一堆错,整了一天才搞定,不想其他人踩坑了!

XCode8.1 ,swift3,WebView的正确打开方式是这样的:

创建应用

打开XCode,创建一个新XCode项目

然后选择创建一个Simple View Aplication:

然后填写项目名称,组织名称,包名等信息

最后选择一个存放项目的目录,我选择的是在个人目录的xcodeprojects目录

设置Web View控件

第一步,选中根目录下的Main.storyboard文件,
第二步,选择第一面
第三步,搜索web view控件
第四步,按住Web View控件
第五步,拖拽Web View控件到页面

然后调整Web View控件达到充满整个屏幕,选择右上角的双环按钮,调出代码框

右键单击代码框,调出菜单,按住【Referencing Outlets】选项下【New Referencing Outlet】右边的【➕】号,拖拽到代码【ViewController】中

然后需要填入控件名称,这里输入webview这个名称:

处理网络请求

然后在【viewDidLoad】方法中加入代码

        // 1.设置访问资源 - 百度搜索
let url = URL(string: "https://www.hushuang.me/"); // 2.建立网络请求
let request = URLRequest(url: url!); // 3.加载网络请求
webview.loadRequest(request)

运行程序

最后,先选择【iPhone7】设备,然后点击左上角的运行按钮,就可以看到你所期待的内容了:

一定要看

如果你发现WebView请求不到数据,而你的的url是http://开头,日志中出现以下内容:

objc[11003]: Class PLBuildVersion is implemented in both
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.
framework/AssetsLibraryServices (0x12160d998) and
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.
platform/Developer/SDKs/iPhoneSimulator.
sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.
framework/PhotoLibraryServices (0x121432d38).
One of the two will be used.
Which one is undefined.
2016-11-07 21:28:23.217 webview[11003:404249]
App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure.
Temporary exceptions can be configured via your app's Info.
plist file.

说明XCode对http请求做了限制,具体处理方式请参考我的另外一篇博文:解开XCode开发工具的http协议限制问题

XCode下Swift – WebView IOS demo的更多相关文章

  1. XCode下的iOS单元测试

    XCode 内置了 OCUnit 单元测试框架,但目前最好用的测试框架应该是 GHUnit.通过 GHUnit + OCMock 组合,我们可以在 iOS 下进行较强大的单元测试功能.本文将演示如何在 ...

  2. 【转】swift实现ios类似微信输入框跟随键盘弹出的效果

    swift实现ios类似微信输入框跟随键盘弹出的效果 为什么要做这个效果 在聊天app,例如微信中,你会注意到一个效果,就是在你点击输入框时输入框会跟随键盘一起向上弹出,当你点击其他地方时,输入框又会 ...

  3. 使用 Swift 在 iOS 10 中集成 Siri —— SiriKit 教程

    下载 Xcode 8,配置 iOS 10 和 Swift 3 (可选)通过命令行编译 除 非你想使用命令行编译,使用 Swift 3.0 的工具链并不需要对项目做任何改变.如果你想的话,打开 Xcod ...

  4. Mac Xcode下配置OpenGL

    暂时搁置一下iOS,又要去弄一些杂七杂八的东西了,毕竟是学校的作业,还是要完成的. 作业是让我们用OpenGL做一个茶壶- -.而且要三维立体能旋转的那种. 好吧这些都不是重点,重点是我最终决定在Ma ...

  5. Swift版iOS游戏框架Sprite Kit基础教程下册

    Swift版iOS游戏框架Sprite Kit基础教程下册 试读下载地址:http://pan.baidu.com/s/1qWBdV0C 介绍:本教程是国内唯一的Swift版的Spritekit教程. ...

  6. Create an Embedded Framework in Xcode with Swift

    转自:http://zappdesigntemplates.com/create-an-embedded-framework-in-xcode-with-swift/ Post Series: Cre ...

  7. 【Swift】iOS开发历险记(二)

    前言 这个系列主要是一些开发中遇到的坑记录分享,有助于初学者跨过这些坑,攒够 7 条发一篇. 声明  欢迎转载,但请保留文章原始出处:)  博客园:http://www.cnblogs.com 农民伯 ...

  8. Xcode下的批量编辑

    说明:目前为止我找到三种查找与替换功能,如果有更多的方式,请在下面留言 第一种:我们常用的查找以及查找与替换功能 在Windows下,使用Ctrl+f 快捷键查找.用Ctrl+h来进行查找与替换功能. ...

  9. 微信下输入法在IOS和安卓下的诡异

    1.验证window.innerHeight 系统版本 iOS9.1.1 安卓4.4.4 没有输入法的情况下 504 567 有输入法的情况下 208 273 看来两者的window.innerHei ...

随机推荐

  1. RAP开发入门-运行过程简析(三)

    今天通过标准的RAP程序来简单分析下RAP的启动过程 1.新建一个标准的rap plugin-in 项目: 得到的项目结构大概如下: run confi..->..add bundle(配置好b ...

  2. 关于XML学习

    XML为知识构架存储语言: http://www.w3school.com.cn/xml/xml_tree.asp 语义网:为计算机构建一个系统的概念网络模型是计算机理解概念和机间信息交流的途径:XM ...

  3. RxSwift源码与模式分析一:基本类

    封装.变换与处理 // Represents a push style sequence. public protocol ObservableType : ObservableConvertible ...

  4. A*寻路算法详解

    以我个人的理解: A*寻路算法是一种启发式算法,算法的核心是三个变量f,g,h的计算.g表示 从起点 沿正在搜索的路径 到 当前点的距离,h表示从当前点到终点的距离,而f=g+h,所以f越小,则经过当 ...

  5. python 获取excel数据 自动登陆

    import xlrdimport timeimport unittestfrom selenium import webdriver class u8819(unittest.TestCase): ...

  6. 深入理解B/S与C/S架构

    首先来介绍一下B/S与C/S架构 C/S架构简要介绍 在了解什么是B/S架构之前,我们有必要了解一下什么是C/S架构: C/S架构是第一种比较早的软件架构,主要用于局域网内.也叫 客户机/服务器模式. ...

  7. docker安装tensorflow环境遇到的问题与解决方案

    docker安装 Tensorflow遇到问题i/o timeout. docker: Error response from daemon: Get https://gcr.io/v1/_ping: ...

  8. 如何在GitHub部署自己的个人网站

    前段时间在B站学习了怎样做一个静态网页(up主是  表严肃 ),朋友问我他能不能访问我的这个静态网页,我说还没把它挂到网上.今天看见一篇文章说可以在GitHub部署自己的个人网站,心血来潮,想做一个玩 ...

  9. ARP(地址解析协议)

    目录 1. ARP 概述 2. ARP 协议工作原理 3. ARP 缓存 4. ARP 报文格式 5. 抓包分析 5.1. ARP 请求报文 5.2. ARP 应答报文 6. 免费 ARP 7. AR ...

  10. properties 乱码问题

    File --> Others Settings --> Default Settings