Swift學(xué)習(xí):第四天

? ? ? ?今天做了兩個demo,寫的這些感覺對swift越來越熟悉了,感覺和oc除了用法不一樣,但是方法基本一樣,找到規(guī)律想著oc里的寫法基本用Swift也能寫出來!

一、PullToRefresh


下來刷新列表,經(jīng)常需要用到的,下拉刷新的控件用的是自帶的UIRefreshControl,使用方法如下:

refreshControl.addTarget(self, action: #selector(refreshToLoadData), for: UIControlEvents.valueChanged)

let attributes = NSMutableAttributedString.init(string: "Loading...")

attributes.addAttribute(NSForegroundColorAttributeName, value: UIColor.white, range: NSRange(location: 0, length: 10))

refreshControl.attributedTitle = attributes

list.refreshControl = refreshControl

下拉后刷新列表,可以使用tableView.reloadData(),我用給的reoloadSection,因為有動畫,看著感覺舒服點。

二、RandomColorGradient


? ? ? ? 點擊按鈕播放音樂,背景是變化的漸變色,這里音樂用了你的名字的一段,好聽~~以前研究過一點漸變色,原理基本上是懂得,主要是每一個像素點的顏色梯度變化,因為像素點很小,所以視覺上看著就是漸變效果,這里沒用這個方法寫,畢竟那樣寫出這效果也是比較麻煩的,這里使用的是CAGradientLayer,Apple封裝好的類,只要設(shè)置好漸變的colors,locations,還有startPoint和endPoint就可以,代碼如下:

let color1 = UIColor.init(red: 255.0/255.0, green: 103.0/255.0, blue: 53.0/255.0, alpha: 0.7).cgColor

let color2 = UIColor.init(red: 88.0/255.0, green: 214.0/255.0, blue: 141.0/255.0, alpha: 0.7).cgColor

let color3 = UIColor.init(red: 0, green: 189.0/255.0, blue: 255.0/255.0, alpha: 0.7).cgColor

gradientLayer.colors = [color1,color2, color3, color2, color1]

gradientLayer.locations = [0.1, 0.3, 0.5, 0.7, 0.9]

gradientLayer.startPoint = CGPoint(x:0.0, y:0.0)

gradientLayer.endPoint = CGPoint(x:1.0, y:1.0)

gradientLayer.masksToBounds = true

gradientLayer.zPosition = -1

self.view.layer.addSublayer(gradientLayer)

? ? ? ? 這里gradientLayer.zPosition = -1,因為運行發(fā)現(xiàn)加了layer之后,button就被完全遮擋住了,所以將layer的z軸位置調(diào)低以正常顯示控件。

? ? ? ?alpha設(shè)置為小于1是為了隨機顏色,這點從原作者那里學(xué)到了,漸變色擁有一定透明度,然后只要隨機改變view的背景顏色就可以,顏色混合在一起就會生成不同的漸變色了,省了不少事。

? ? ? ?隨機生成顏色,可以將顏色用數(shù)值表示,隨機生成數(shù)值來生成隨機顏色。例如:greenValue = CGFloat(drand48())

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容