0Pricing
Swift Academy · Ders

CALayer Temelleri

Katmanlar, özellikleri ve hiyerarşileriyle çalışın.

CALayer Temelleri, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Swift Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Swift Academy kursu toplamda 4 dersten oluşur.

CALayer Nedir

CALayer, UIKit'te gördüğünüz her şeyin arka plandaki deposudur. Her UIView, görsel içeriğini GPU üzerinde bir doku olarak tutan bir katman tarafından çizilir.

Katmanlarla doğrudan çalışmak, donanım hızlandırmalı grafiklerin ve animasyonların kullanılmasını sağlar.

import UIKit
let layer = CALayer()

Görünümlerin Arkasındaki Katmanlar

Her görünümün bir layer özelliği vardır. Katman özelliklerini ayarlamak çoğu zaman özel çizim yapmaktan daha basit ve daha ucuzdur.

view.layer.cornerRadius = 12
view.layer.masksToBounds = true

Geometri: Çerçeve, Sınırlar, Konum

Bir katmanın bounds özelliği (kendi koordinat alanı), position özelliği (parent içindeki bağlantı noktasının konumu) ve bunlardan türetilen bir frame özelliği vardır. Bunlardan herhangi birini düzenlemek diğerlerini de günceller.

let layer = CALayer()
layer.bounds = CGRect(x: 0, y: 0, width: 100, height: 100)
layer.position = CGPoint(x: 150, y: 150)

Bağlantı Noktası

anchorPoint (varsayılan değer olan 0.5, 0.5 = merkez), katmanın konumlandırma ve dönüşümler için kullandığı başlangıç noktasını tanımlar. Döndürme ve ölçekleme bu noktanın çevresinde gerçekleşir.

layer.anchorPoint = CGPoint(x: 0, y: 0) // top-left pivot

Görsel Özellikler

Katmanlar görsel stillendirmeyi doğrudan sunar: backgroundColor (bir renk değeri), cornerRadius, borderWidth, borderColor ve opacity.

layer.backgroundColor = UIColor.systemBlue.cgColor
layer.cornerRadius = 8
layer.borderWidth = 2
layer.borderColor = UIColor.white.cgColor

Gölgeler

Katmanlar gölgeleri shadowColor, shadowOpacity, shadowOffset ve shadowRadius ile çizer. Performans için bir shadowPath ayarlayın.

layer.shadowColor = UIColor.black.cgColor
layer.shadowOpacity = 0.3
layer.shadowOffset = CGSize(width: 0, height: 4)
layer.shadowRadius = 6

Alt Katmanlar

Katmanlar bir ağaç oluşturur. Alt katmanları addSublayer ile ekleyin; bu katmanlar parent koordinat alanında konumlandırılır.

let parent = CALayer()
let child = CALayer()
child.frame = CGRect(x: 10, y: 10, width: 40, height: 40)
parent.addSublayer(child)

Özelleştirilmiş Katman Türleri

UIKit, katman alt sınıflarıyla birlikte gelir: CAShapeLayer (vektör yolları), CAGradientLayer (renk geçişleri), CATextLayer (metin) ve CAReplicatorLayer (çoğaltılmış alt katmanlar).

let shape = CAShapeLayer()
shape.path = UIBezierPath(ovalIn: CGRect(x: 0, y: 0, width: 50, height: 50)).cgPath
shape.fillColor = UIColor.systemRed.cgColor

Renk Geçişli Katmanlar

CAGradientLayer, colors, locations, startPoint ve endPoint ile tanımlanan yumuşak renk geçişlerini oluşturur.

let gradient = CAGradientLayer()
gradient.colors = [UIColor.systemBlue.cgColor, UIColor.systemPurple.cgColor]
gradient.startPoint = CGPoint(x: 0, y: 0)
gradient.endPoint = CGPoint(x: 1, y: 1)

İçerik Ölçeği ve Netlik

Katman tarafından çizilen içeriğin Retina ekranlarda net görünmesi için contentsScale değerini ekran ölçeğine ayarlayın. Bunu unutmak, metinlerin ve şekillerin bulanık görünmesine neden olur.

layer.contentsScale = UIScreen.main.scale

Katmanlar Hafiftir

Katmanlar dokunma olaylarını veya Auto Layout'u yönetmez; yalnızca görsel nesnelerdir. Bu nedenle dekoratif veya animasyonlu içerik için görünümlerden daha az maliyetlidirler.

Hızlı Kontrol: CALayer

CALayer temelleri konusundaki anlayışınızı değerlendirin.

Özet: CALayer Temelleri

CALayer, her UIKit görünümünün temelini oluşturur ve GPU hızlandırmalı görseller sunar: bounds/position/anchorPoint geometrisi, stillendirme (köşe yarıçapı, kenarlıklar, gölgeler) ve bir alt katman ağacı.

Özelleştirilmiş alt sınıflar şekilleri, renk geçişlerini, metni ve çoğaltmayı yönetir. Netlik için contentsScale değerini ayarlayın ve katmanların dokunma veya Auto Layout desteği olmayan hafif görsel nesneler olduğunu unutmayın. Bu temel, sıradaki animasyonların temelini oluşturur.

Sıkça Sorulan Sorular

“CALayer Temelleri” dersi ücretsiz mi?

Evet — “CALayer Temelleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Swift Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Swift Academy kursu toplamda 4 dersten oluşur.

“CALayer Temelleri” dersinde ne öğreneceğim?

Katmanlar, özellikleri ve hiyerarşileriyle çalışın. Swift Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Swift Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Swift Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“CALayer Temelleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Swift Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Swift Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. CALayer Temelleri
  2. Örtük ve Açık Animasyonlar
  3. Dönüşümler ve 3B Efektler
  4. Core Graphics ile Özel Çizim
← Swift Academy Sayfasına Dön