iOS14 UIPageControl Güncellemesi

Orhan Erbas
2 min readDec 9, 2020

--

Herkese merhabalar, profesyonel hayatım da karşılaştığım ve beni uğraştıran sorunları sizler ile paylaşma gereği duydum, bunun sebebi ise karşılaştığım problemleri çözerken bazen çok fazla vakit harcayabiliyorum aslında bu hepimizin karşılaştığı bir durum bu nedenle önüme çıkan sorunları ve çözümlerini vakit oldukça sizler ile paylaşacağım. :)

Bu yazımda sizler ile iOS14 de yaşanan UIPageControl objesinin görüntülenmeme sorununu ele alacağım.

iOS14 ile beraber UIPageControl de bazı yeni değişiklikler oldu:

  • Background style
  • Custom indicator image
  • Custom indicator image at a specific index
  • Infinite pages (new scrubbing behavior)

Bu değişikliklerden bir tanesi yüzünden projemde daha önce çalışan UIPageControl objesi çalışmamaya başladı biraz araştırmam ile birlikte sorunun iOS14 sürümünden kaynaklandığını fark ettim.

Benim sorunum yeni gelen BackgroundStyle opsiyonları ile alakalıydı. Önceki versiyonlarda default .minimal stilde gelen UIPageControl objesini iOS14 sürümünde BackgroundStyle belirtmek gerekiyor.

Peki nedir bu BackgroundStyle opsiyonları?

automatic

The default background style, which adapts in response to changes in the page control’s interaction state.

prominent

The background style that shows a full background regardless of the interaction.

minimal

The background style that shows a minimal background regardless of the interaction.

Genel olarak kullanımı bu şekildedir:

pageControl.backgroundStyle = .prominent

Kısaca yeni gelen BackgroundStyle opsiyonlarından bahsettikten sonra artık sorunumu nasıl çözdüğümü anlatmak istiyorum,

Daha önce eklediğim UIPageControl objesini silip tekrar storybord’a ekleyerek eski haline uygun şekilde constraint düzenlemelerini ve gerekli bağlantılarını yaptım, son olarak ise BackgroundStyle tanımlamasını aşşağıdaki şekilde ilgili alana ekledim.

Bu yeni gelen özellik sadece iOS14 sürümünde olduğu için spesifik olarak sürüm kontrolü yapmak gerekiyor aksi takdirde hata alabilirsiniz.

Konuyu daha fazla uzatmadan elimden geldiğince net anlatmaya çalıştım, bir başka yazımda görüşmek üzere.

Sevgiler…

--

--