Nasıl iPhone'da yuvarlak köşeli bir UİLabel oluşturabilirim?
Yerleşik yuvarlak köşeli UİLabels oluşturmak için bir yolu var mı? Eğer cevabı ise hayır, nasıl böyle bir nesneyi oluşturma hakkında gitmek istiyorsunuz?
CEVAP
3.0 önce
Bir şekilde yapmak, hangi kullandım son zamanlarda, oluşturmak için UİView alt sınıfı olan sadece bir yuvarlatılmış dikdörtgen çizer, ve sonra yapmak UİLabel ya, benim durumumda, UİTextView, bir küme içinde. Özellikle:
UIView
Bir alt sınıf oluşturun ve AdıRoundRectView
gibi bir şey.RoundRectView
'sdrawRect:
yöntem, çiz bir yol etrafında sınırları görünümünü kullanarak Çekirdek Grafik arama gibi CGContextAddLineToPoint() için kenarları ve CGContextAddArcToPoint() için yuvarlak köşeler.UILabel
bir örnek oluşturmak ve RoundRectView bir alt görünümünü olun.- Etiket çerçevesini birkaç piksel RoundRectView bu çizgiye ilave olarak ayarlayın. (Örnek,
label.frame = CGRectInset(roundRectView.bounds, 8, 8);
)
Bir görünüm eğer genel bir UİView oluşturmak için Interface Builder kullanarak RoundRectView yer ve onun sınıf denetçisini kullanarak değiştirebilirsiniz. Senin kadar dikdörtgen derleyin ve uygulamayı çalıştırın olmayacak, ama en azından gerekirse küme yeri ve çıkışları ve eylemleri bağlamak mümkün olacak.
3.0 ve Sonrası
iPhone OS 3.0 ve üstü CALayer
sınıf cornerRadius
özelliği destekler. Her görünüm işleyen CALayer
bir örneği vardır. Bu hat şimdi: yuvarlak köşeler elde edebilirsiniz
view.layer.cornerRadius = 8;
11 ** ve QuartzCore çerçeve CALayer başlıkları ve özellikleri erişmek için bağlamak gerekir.