当前位置: 首页>编程语言>正文

swift 加载工程中的图片 swift程序

      Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C*共同运行于Mac OS和ios平台,用于搭建基于苹果平台的应用程序

相信很多人都对ios的开发充满兴趣,既然苹果公司推出了更简单更容易上手的swift,作为一个对ios开放感兴趣的人自然也要来插一脚了。

  • 这只是个学习日记,纪录我自己的学习过程
  • 有什么错误欢迎大家指正,希望一同进步

初见ios程序,创建项目的步骤我就省略了我们来看看ios项目工程的结构

swift 加载工程中的图片 swift程序,swift 加载工程中的图片 swift程序_iOS,第1张

有故事板Main.Storyvoard、主委托程序AppDelegate.swift、控制器ViewController,有些东西我们放在以后慢慢熟悉,今天我们先来完成我们第一个iOS程序,一个简单的加法运算程序。

1,Main.storyboard 主界面故事版

什么叫故事版呢,其实有android开发经验的的我觉得可以理解成layout就行,然后我们经过一系列的拖拽控件之后,我们可以看看效果

swift 加载工程中的图片 swift程序,swift 加载工程中的图片 swift程序_控件_02,第2张

这就是俩个用来获取用户输入信息的Text Field以及一个用来显示结果的label和一个用来确定的button,控件的一些属性可以在故事信息面板的中调整如字体背景

swift 加载工程中的图片 swift程序,swift 加载工程中的图片 swift程序_swift_03,第3张

2,ViewController.swift 主控制器类

其实就像是activity啦。。。

  • 任何一个ViewController类都需要继承与UIViewController或者其子类.
  • 需要重载viewDidLoad()函数
  • 需要重载didReceiverMemoryWarning()函数
//当控制器的视图类加载完成时调用
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    //当系统触发内存警告时调用
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

     接下来我们把我们的控件按住右键拖到我们的控制器类里面

swift 加载工程中的图片 swift程序,swift 加载工程中的图片 swift程序_iOS_04,第4张

我们还可以拖拽事件,比如button的点击事件

swift 加载工程中的图片 swift程序,swift 加载工程中的图片 swift程序_ios_05,第5张

接下来我们就可以在button的点击事件中处理逻辑。

@IBAction func addResult(sender: AnyObject) {
        var v1 = value1.text.toInt()
        var v2 = value2.text.toInt()
        
        if v1 != nil && v2 != nil {
            var countResult = v1! + v2!
            result.text = String(countResult)
        }else {
            result.text = "未知错误,只能计算数字"
        }
        
    }

     swift具有类型推断的能力,也就是说你不需要刻意表明它的类型,系统会自动推断,我们只需确定是变量var 还是常量let,上面的代码中我们拿到了用户输入的值之后使之转换为int型进行加法运算,但是我们还需要考虑如果不能转为int的情况,这时候我们就要提到swift的另一个特性。

可选类型(optionals)

我们来看看toInt方法的返回值

extension String {

    /// If the string represents an integer that fits into an Int, returns
    /// the corresponding integer.  This accepts strings that match the regular
    /// expression "[-+]?[0-9]+" only.
    func toInt() -> Int?
}

      可以看到返回值是一个Int?也就是说当不可以转换为int值的时候会返回一个nil值

所以我们可以通过if语句判断有值之后通过强制解封!来获取返回的int值,最后运行效果。

swift 加载工程中的图片 swift程序,swift 加载工程中的图片 swift程序_控件_06,第6张

swift 加载工程中的图片 swift程序,swift 加载工程中的图片 swift程序_swift 加载工程中的图片_07,第7张

这个ios程序就是我们亲手开发的第一个用swift编写的小程序,swift语法的更多实用我会慢慢的写出来的,当然Android我也不能拉下来啊


https://www.xamrdz.com/lan/57s1959686.html

相关文章: