用到的一些函數(shù)
1.取隨機(jī)數(shù)的函數(shù)
number = Int(arc4random_uniform(100))+1
這是一個(gè)取1--100的隨機(jī)數(shù)
2.取絕對(duì)值的函數(shù)
diff = abs(a-b)
表示取a和b 的絕對(duì)值
3.開(kāi)根號(hào)的函數(shù)
var i = 16
Int(sqrt(Double(i)))
print(i)
輸出結(jié)果i為4
一些用到的方法
1.讓標(biāo)簽上字自適應(yīng)的方法
label.adjustsFontSizeToFitWidth = true
2.讓圖片大小自適應(yīng)
let image3=UIImage(named: "SliderTrackLeft")?.resizableImageWithCapInsets(insets)
發(fā)消息給圖片讓他大小可用
3.當(dāng)多個(gè)視圖控制器的時(shí)候返回上一個(gè)控制器
self.dismissViewControllerAnimated(true, completion:.None)
4.在視圖控制器上添加網(wǎng)頁(yè)
override func viewDidLoad() {
//這是一個(gè)自動(dòng)執(zhí)行的函數(shù)业筏,也即是說(shuō)當(dāng)跳到這個(gè)頁(yè)面的時(shí)候會(huì)自動(dòng)大開(kāi)你添的網(wǎng)頁(yè)
let url=NSURL(string: "http://www.runoob.com/html/html-tables.html")
//這個(gè)統(tǒng)一資源標(biāo)示符是??
let request = NSURLRequest(URL: url! )
//請(qǐng)求是分配一個(gè)統(tǒng)一資源定位標(biāo)示符
myView.loadRequest(request)//給它一個(gè)請(qǐng)求
//要在視圖控制器上添加一個(gè)webview的框架
}
5.用xcode畫(huà)圖
首先在視圖控制器上添加一個(gè)畫(huà)布
let canvans = Canvans(frame:self.view.bounds)
canvans.backgroundColor = UIColor.clearColor()
self.view.addSubview(canvans)
然后去新建一個(gè)文件cocoa 阎肝,選擇uiview為父類的文件
接下來(lái)就是畫(huà)圖的一些方法了在里面是用貝塞爾曲線來(lái)畫(huà)圖的
畫(huà)圖方法
1.畫(huà)直線
let lineBP = UIBezierPath()
lineBP.moveToPoint(CGPointMake(50, 100))
lineBP.addLineToPoint(CGPointMake(300, 200))
lineBP.lineWidth = 5//線條粗細(xì)
UIColor.blackColor().set()//線條的顏色
lineBP.stroke()//這里可以選擇空心或者實(shí)心
2牍戚。畫(huà)矩形方框
let rectBP = UIBezierPath(rect: CGRectMake(100, 200, 200, 400))//前兩個(gè)表示坐標(biāo)后兩個(gè)表示寬高
//設(shè)置線條顏色為紅色
UIColor.redColor().setStroke()
//設(shè)置填充為黃色
UIColor.yellowColor().set()
//填充矩形區(qū)域
rectBP.fill()
//繪制矩形邊框
rectBP.stroke()
3.畫(huà)圓弧
let arcBP = UIBezierPath(arcCenter: CGPointMake(150, 350), radius: 100, startAngle: 0, endAngle: CGFloat(M_PI_2), clockwise: false)
UIColor.greenColor().set()
// arcBP.stroke()
arcBP.fill()
4.畫(huà)橢圓
let ovalBP = UIBezierPath(ovalInRect: CGRectMake(100, 300, 100, 50))
UIColor(red: 37.0/255.0, green: 67.0/255.0, blue: 128.0/255.0, alpha: 1).set()
ovalBP.fill()
把橢圓后面兩項(xiàng)改為一樣就能變成圓了
5.畫(huà)二次曲線
let quadBP = UIBezierPath()
quadBP.moveToPoint(CGPointMake(50, 600))
quadBP.addQuadCurveToPoint(CGPointMake(300, 600), controlPoint: CGPointMake(100, 300))
quadBP.lineWidth = 3
UIColor.grayColor().set()
6.畫(huà)封閉曲線
let clouseBP = UIBezierPath()
clouseBP.addArcWithCenter(CGPointMake(150, 200), radius: 100, startAngle:-CGFloat(M_PI), endAngle: 0, clockwise: true)
clouseBP.addArcWithCenter(CGPointMake(150, 400), radius: 100, startAngle: 0, endAngle: CGFloat(M_PI), clockwise: true)
//封閉整個(gè)曲線
clouseBP.closePath()//這句很關(guān)鍵
clouseBP.lineWidth = 10
UIColor.redColor().set()
clouseBP.stroke()
動(dòng)畫(huà)的方法
1粥谬。在控制器上給圖片一個(gè)放圖的框
var imageView:UIImageView!
imageView = UIImageView(frame: CGRectMake( x , y , 15, 25))//框的大小坐標(biāo)
imageView.image = UIImage(named: "runner0")//放一張圖顯示
要讓圖片動(dòng)起來(lái)要添加動(dòng)畫(huà)的圖片
imageView.animationImages = [UIImage(named: "runner0")!,
UIImage(named: "runner1")!,
UIImage(named: "runner2")!,
UIImage(named: "runner3")!,
UIImage(named: "runner4")!,
UIImage(named: "runner5")!
]
//這是一個(gè)動(dòng)畫(huà)的方法景埃,注意圖片名字不能錯(cuò)计贰,而且括號(hào)后面的感嘆號(hào)和逗號(hào)不能丟
//動(dòng)畫(huà)的總持續(xù)時(shí)間
imageView.animationDuration = 0.5
self.view.addSubview(imageView)
//開(kāi)始動(dòng)畫(huà)
imageView.startAnimating()
這樣子圖片回動(dòng)起來(lái)但是筷笨,只會(huì)在一個(gè)地方動(dòng)
我們需要添加一個(gè)時(shí)間控制器拐袜,讓圖片在屏幕上也動(dòng)起來(lái)
var timer:NStimer
timer = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: "move", userInfo: nil, repeats: true)
//這里的move是一個(gè)函數(shù)冯凹,一個(gè)控制圖片移動(dòng)方向的函數(shù)
func move(){
var frame = imageView.frame
imageView.frame.origin.y += 5
imageView.frame.origin.x += 20
imageView.frame = frame
}
隨記
控制輸出位數(shù)
add.text = "\(String(format: "%.2f",jia))"
寫(xiě)動(dòng)畫(huà)的代碼
override func viewDidLoad() {
super.viewDidLoad()
var imageView:UIImageView!//創(chuàng)建一個(gè)圖片的對(duì)象
//給圖片初始化
imageView = UIImageView(frame: CGRectMake(0, 0, 410,730))
//給圖片
imageView.animationImages=[UIImage(named: "1")!,
UIImage(named: "2")!,
UIImage(named: "3")!,
UIImage(named: "3")!,
UIImage(named: "4")!,
UIImage(named: "5")!,
UIImage(named: "6")!,
UIImage(named: "7")!
]
imageView.animationDuration = 1//動(dòng)畫(huà)持續(xù)的時(shí)間
self.view.addSubview(imageView)//把對(duì)象添加到view里面
imageView.startAnimating()//開(kāi)始動(dòng)畫(huà)
}
點(diǎn)擊空白取消第一響應(yīng)
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
if admin.isFirstResponder()
{
admin.resignFirstResponder()
}
else if password.isFirstResponder()
{
password.resignFirstResponder()
}
}
指紋解鎖解鎖代碼
{
override func viewDidLoad() {
super.viewDidLoad()
let errPointer = NSErrorPointer()
let ctx = LAContext()//上下文類
//判斷設(shè)備是否支持指紋識(shí)別
if ctx.canEvaluatePolicy(.DeviceOwnerAuthenticationWithBiometrics, error: errPointer){
//Swift中允許將一個(gè)函數(shù)作為另一個(gè)函數(shù)的參數(shù)
//evaluattePolicy方法的第三個(gè)參數(shù)是一個(gè)函數(shù)
//該函數(shù)傳參數(shù)時(shí)可以在花括號(hào)中寫(xiě)一個(gè)匿名函數(shù)傳進(jìn)去
//該匿名函數(shù)通常也被稱為“閉包”
ctx.evaluatePolicy(.DeviceOwnerAuthenticationWithBiometrics, localizedReason: "請(qǐng)輸入指紋進(jìn)行支付", reply: { (isOK, err) -> Void in
if isOK {
print("支付成功")
}
else{
print("支付失敗")
}
})
}
else{
print("你的設(shè)備不支持指紋識(shí)別")
}
}
}