SwiftUI'de yön değiştiğinde kullanıcı arayüzünü güncelle
SwiftUI öğrenmeye başladım. Oryantasyon değişirken kullanıcı arayüzünü güncellemeye çalışıyorum. Kendi @Environment(\.horizontalSizeClass) var sizeClass
görüşüme ekledim ve ardından iphone simülatörü döndürüldüğünde kullanıcı arayüzünü otomatik olarak güncelliyor. Ancak iPad simülatörü döndürüldüğünde kullanıcı arayüzünü güncellemez. İPad için kullanıcı arayüzünü nasıl güncelleyeceğimi söyleyebilir misiniz?
Yanıtlar
İnsan Arayüzü Yönergelerindeki Cihaz Boyutu Sınıflarına bakarsanız, iPad'lerin hem yatay hem de dikey modda 'Normal' genişliğe ve yüksekliğe sahip olduğunu fark edeceksiniz.
Yani .horizontalSizeClass kullandığınızda, hem iPhone hem de iPad üzerinde çalışıyor, sadece iPad döndürüldüğünde sizeClass'ı değiştirmiyor.
https://developer.apple.com/design/human-interface-guidelines/ios/visual-design/adaptivity-and-layout/
- Çerçeve boyutlarını bir GeometryReader ile ayarlarsanız, cihaz döndürüldüğünde bunlar otomatik olarak güncellenecektir.
- Ayrıca .frame'i (maxWidth :) görünümler üzerinde ayarlamak oldukça kullanışlıdır, böylece iPad yatay ise görünümün içeriği sınırlı olacaktır. 715 civarı iyi çalışıyor.