2014-06-08 27 views
5

Tôi đang tạo chế độ xem và thêm lớp gradient vào nó.Làm thế nào để chèn một sublayer trong nhanh chóng?

Tôi có điều này:

import UIKit 
import QuartzCore 


let rect : CGRect = CGRectMake(0,0,320,100) 

var vista : UIView = init(frame: rect) 

let gradient : CAGradientLayer = CAGradientLayer() 
gradient.frame = vista.bounds 

let cor1 = UIColor.blackColor().CGColor 
let cor2 = UIColor.whiteColor().CGColor 

let arrayColors = [cor1, cor2] 

gradient.colors = arrayColors 

bây giờ tôi phải làm điều này

[view.layer insertSublayer:gradient atIndex:0]; 

Làm thế nào để làm điều đó trong nhanh chóng?

Trả lời

16

Bạn có thể sử dụng đoạn mã sau

view.layer.insertSublayer(yourLayer, atIndex: yourIndex) 
+0

Cảm ơn. Hoạt động hoàn hảo nhưng kỳ lạ, tôi đã cố gắng đoán lệnh bằng cách gõ view.layer.insert và nhấn tab, để xem liệu autosuggest sẽ đi kèm với một cái gì đó, nhưng không có gì đến, vì vậy tôi nghĩ rằng tôi đã đi sai đường. BTW, cách tốt nhất để khám phá một lệnh như thế này khi bạn không biết là gì? – SpaceDog

+0

Bạn có thể chỉ huy + click vào layer và sau đó command + click vào CALayer (hoặc command + shift + o và gõ CALayer) để có được biểu diễn nhanh chóng của CALayer về tệp tiêu đề objc –

3

bạn đã thử này?

view.layer.insertSublayer(gradient, atIndex:0) 

Lưu ý rằng bất cứ khi nào bạn chỉnh sửa mã Swift, bạn có thể nhấp vào biểu tượng từ khung để xem phiên bản Swift-ified của tệp tiêu đề API đó. Ngoài ra, tài liệu online và trong Xcode hiển thị cú pháp Swift cho tất cả các API mà nó bao gồm.

Các vấn đề liên quan