• Monthly Archives: 8月 2015

Swift类型之间转换

Int转换Float或Double:

let intVar : Int = 3
let doubleVar : Double = Double(intVar)

Int转换为String:

let intVar : Int = 3
let strVar : String = String(intVar)

 

String转换为Int:

let strVar : String = "123"
let intVar : Int? = strVar.toInt()

Double转换为String:

let doubleVar : Double = 3.14
let strVar : String = String(doubleVar)

Double保留两位小数,需要对Double进行扩展:

extension Double {
    func format(f: String) -> String {
        return NSString(format: "%\(f)f", self)
    }
}
let myDouble = 1.234567
println(myDouble.format(".2")

String转换Double:

let strVar : String = "3.14"
var string = NSString(string: strVar)
string.doubleValue

CocoaPods的安装和使用介绍

安装方式异常简单, Mac下都自带ruby,使用ruby的gem命令即可下载安装:

$ sudo gem install cocoapods
$ pod setup

如果你的gem太老,可能也会有问题,可以尝试用如下命令升级gem:

sudo gem update --system

另外,ruby的软件源rubygems.org因为使用的亚马逊的云服务,所以被墙了,需要更新一下ruby的源,如下代码将官方的ruby源替换成国内淘宝的源:

gem sources --remove https://rubygems.org/
gem sources -a http://ruby.taobao.org/
gem sources -l

还有一点需要注意,pod setup在执行时,会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是Cocoapods在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着cd到那个目录,用du -sh *来查看下载进度。你也可以参考本文接下来的使用cocoapods的镜像索引一节的内容来提高下载速度。

使用Storyboard进行简单的界面跳转并传递参数

使用storyboard结合代码来做确实可以给开发带来很多的便利。

在实践的过程中,我们经常会遇到界面的跳转问题。通过控件和界面的建立的“连接”就可以了。

如果是navigationcontroller的跳转,则选择push的方式(否则xcode运行的时候会报错);

如果是Viewcontroller的跳转,则选择modal的方式。

如果你想通过代码来打开另外一个界面,则需要设置他们之间连接的segue.identifier,比如你设置为jumpid。

 

然后代码就可以这么写:

self.performSegueWithIdentifier("jumpid", sender:self);

 

如果你还想在跳转的时候传递数值过去,你可以这么写:

override func prepareForSegue(segue:UIStoryboardSegue, sender: AnyObject?) {
        if(segue.identifier =="jumpid") {
            var barInfo:BarInfoViewController = segue.destinationViewControlleras! BarInfoViewController;
            barInfo.name ="david";
            barInfo.age =99;
        }
    }

 

close