swift UI专项训练24 构建函数和侦测网页载入事件

构建一个方法用来载入网页的请求:

func loadurl(url:String ,web:UIWebView){
    let aurl = NSURL(string: url)
        let urlrq = NSURLRequest(URL: aurl!)
        web.loadRequest(urlrq)

    }

然后既然控制器继承了代理,那么就需要实现一些代理的方法,别忘了把小齿轮指示器也和控制器关联起来,用它来指示网页的读取事件。

  @IBOutlet weak var loading: UIActivityIndicatorView!

把它应用到webview的代理的方法中:

   //网页开始载入
    func webViewDidStartLoad(webView: UIWebView) {
        loading.startAnimating()
    }
    //网页结束载入
    func webViewDidFinishLoad(webView: UIWebView) {
        loading.stopAnimating()
    }

此外,我们知道平时如果要加载内容的时候运营商旁边还有个齿轮在转动,这个是系统的公共组件,用法如下:

   //网页开始载入
    func webViewDidStartLoad(webView: UIWebView) {
        loading.startAnimating()
        UIApplication.sharedApplication().networkActivityIndicatorVisible = true
    }
    //网页结束载入
    func webViewDidFinishLoad(webView: UIWebView) {
        loading.stopAnimating()
        UIApplication.sharedApplication().networkActivityIndicatorVisible = false
    }

顺便学习一下系统组件的用法。

时间: 2024-08-25 07:06:37

swift UI专项训练24 构建函数和侦测网页载入事件的相关文章

swift UI专项训练17 SearchBar搜索条

搜索栏算是UI中很简单的一个操作了,拖一个搜索栏上来. 搜索栏中比较重要的属性是占位符,也就是图中右侧的Placeholder,比如输入"请输入关键字",显示如下: 这一项是设置背景颜色: Options选项会对搜索框进行一些调整: 比如我们选择第一项,会显示出一个下拉箭头: 接下来看这部分: 这个里面有一些很有意思的选项,比如这个Keyboard Type,当我们在网页输入的时候要输入汉字和数字,当我们输入电话号码的时候只能输入数字,就是用这个选项. 还有这个Return Key,我

Swift UI专项训练1 交互

我们都知道在IOS界面编程的时候有IBOutlet和IBAction,前者是引用后者是操作,IBAction有一个参数sender,用来指向操作对象,之前我发布的天气预报的小程序那一话可以看到,如果我们需要一个按钮的点击事件的话那就使用IBAction,如果是一个Label要显示东西的话那就用IBOutlet. 现在来讲一下IBAction中的一些事件类型: 1.Touch Down Inside:触碰,只要我们碰到不动就算触发了事件 2.Touch Up  Inside:抬离,和1不同的是,触

swift UI专项训练25 网址输入完毕事件

首先我们运行一下上一话中写好的程序看看有什么问题. 我们发现点击return是没有反应的,这是因为我们之前设置了文本框为这个界面的第一反应者,我们要得到键盘的返回必须对键盘做一些操作.从textfield入手,添加一个方法: func textFieldShouldReturn(textField: UITextField) -> Bool { textField.resignFirstResponder() return true } 这是一个点击返回按钮输入框消失的方法,其中在返回之前我们要

Swift UI专项训练7 数据添加

上一话我们使用了自己定义的控制器之后发现tableview上的餐馆没有了,这一话我们来添加数据,新添加一个餐馆类,这个类我们不需要继承系统的类,直接添加一个swift文件就好 import Foundation class Restaurant { var name = "" var location = "" var score = 10 } 我简单建一个类,分别代表餐馆名字.餐馆位置和餐馆评分,它们都有默认值. 然后我们回到餐馆排行的控制器中新建一个餐馆的数组.

swift UI专项训练39 用Swift实现摇一摇功能

微信的摇一摇功能想必大家都用过,过春节的时候抢红包也没少摇吧,那么用swift语言怎样实现这么酷炫的功能呢.摇动属于IOS内置可识别的一种动作,在你须要实现摇动功能的viewcontroller中.在viewDidLoad方法中增加下面代码: UIApplication.sharedApplication().applicationSupportsShakeToEdit = true self.becomeFirstResponder() 第一句是要求当前页面支持对摇动事件可编辑的支持,设置为t

swift UI专项训练12 ActivityIndicator

有时候我们的APP需要联网或者其他比较耗时的操作,需要给用户提示,提示的好办法是进度条或者一个转圈的齿轮,提示用户有操作在进行.我们在上一话的场景中增加两个按钮,下载和停止,点击下载齿轮就开始转,点击停止就停止. 然后把这个组件拖到我们的场景中 设置格式: 效果如图: 把按钮和齿轮连线到控制器中: @IBOutlet weak var loading: UIActivityIndicatorView! @IBAction func stopButton(sender: UIButton) { }

swift UI专项训练41 用纯代码的方式实现stepper的值传递

之前讲过通过storyboard的方式捕获控件的值,现在我们来试试通过纯代码的方式来实现同样的功能.首先定义一个stepper和一个label,用label来显示stepper的当前值. self.priceStepper = UIStepper(frame: CGRectMake(150, 120, 100, 20)) self.priceStepper.minimumValue = 100//最小值 self.priceStepper.maximumValue = 2000//最大值 sel

swift UI专项训练30 Segmented Control段控件

有时候我们需要给页面分段,也就是分组.基类是UISegmentedControl,下面展示它的属性: 基本上就是几段,段的标题,每一段的图像.现在我们来拖动一个段,默认的是两段,把它的段数设定为3,给第三段命名. 段的事件是这个段发生了切换,valueChanged事件.现在让我们来实现一下,往界面中拖一个label,让段切换的时候,label中显示段的标题. 和上一话中的方法类似,label拖拽到控制器中,然后把segment的事件value changed也拖拽到控制器中. 然后把操作的代码

swift UI专项训练31 Slider 滑块

滑块是用一种渐进柔和的方式来展示一种设置或者一个进度.滑块的基类是UISlider,属性比较简单 主要是最小值最大值和当前值. 设定如下: 可以看到下面有两个选项,最小值图像和最大值图像,我们导入两张图片(不好意思没有太合适的图片...): 它最主要的事件就是值变更,跟我们之前遇到的控件差不多,现在我们让label显示滑动的当前值,最小是0,最大是10,我们上面设置过的. @IBAction func sd(sender: UISlider) { label1.text = "\(sender.