Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
iOS 11'de Apple, gezinti çubuğu, arama çubuğu ve tablo görünümlerindeki güncelleştirmeler de dahil olmak üzere yeni görsel değişiklikler yaptı. Ayrıca, kenar boşlukları ve tam ekran içeriği üzerinde daha fazla esneklik sağlamak için iyileştirmeler yapılmıştır. Bu değişiklikler bu kılavuzda ele alınmıştır.
Özellikle iPhone X tasarımı hakkında bilgi için Apple'ın iPhone X için Tasarlama videosunu izleyin.
UIKit
UIKit çubukları, son kullanıcılar için daha erişilebilir hale getirmek için iOS 11'de uyarlanmıştır.
Bu tür değişikliklerden biri, bir kullanıcı bir çubuk öğesine uzun süre bastığında görüntülenen yeni bir HUD ekranıdır. Bunu etkinleştirmek için özelliğini açın largeContentSizeImage UIBarItem ve varlık kataloğu aracılığıyla daha büyük bir görüntü ekleyin:
barItem.LargeContentSizeImage = UIImage.FromBundle("AccessibleImage");
Gezinti Çubuğu
iOS 11, gezinti çubuğu başlıklarının daha kolay okunmasını sağlamak için yeni işlevler kullanıma sunulmuştur. Uygulamalar, özelliğini true olarak atayarak PrefersLargeTitles bu büyük başlığı görüntüleyebilir:
NavigationController.NavigationBar.PrefersLargeTitles = true;
Uygulamanızda daha büyük başlıklar ayarlamak, aşağıdaki ekran görüntüsünde gösterildiği gibi uygulamanızdaki tüm gezinti çubuğu başlıklarının daha büyük görünmesini sağlar:

Gezinti çubuğunda büyük bir başlığın ne zaman görüntüleneceğini denetlemek için, gezinti öğesindeki öğesini , Neverveya Automaticolarak AlwaysayarlayınLargeTitleDisplayMode.
Arama Denetleyicisi
iOS 11, doğrudan gezinti çubuğuna bir arama denetleyicisi eklemeyi kolaylaştırdı. Bir arama denetleyicisi oluşturduktan sonra, şu özelliği kullanarak SearchController gezinti çubuğunuza ekleyin:
NavigationItem.SearchController = searchController;
Uygulamanızın işlevselliğine bağlı olarak, bir kullanıcı listede gezindiğinde arama çubuğunun gizlenmesini isteyebilir veya istemeyebilirsiniz. Özelliğini kullanarak HidesSearchBarWhenScrolling bunu ayarlayabilirsiniz.
Kenar boşlukları
Apple, görünümler ve alt görünümler arasındaki alanı ayarlamak için kullanılabilecek yeni bir özellik directionalLayoutMargins oluşturdu. ile leading veya trailing inset'lerle kullanındirectionalLayoutMargins. Sistemin Soldan Sağa veya Sağdan Sola dil olmasına bakılmaksızın, uygulamanızdaki aralık iOS tarafından uygun şekilde ayarlanır.
iOS 10 ve öncesinde, tüm görünümlerin hizalandıkları en düşük kenar boşluğu boyutu vardı. iOS 11, kullanarak ViewRespectsSystemMinimumLayoutMarginsbunu geçersiz kılma seçeneğini kullanıma sunar. Örneğin, bu özelliği false olarak ayarlamak, kenar kümelerinizi sıfıra ayarlamanıza olanak tanır:
ViewRespectsSystemMinimumLayoutMargins = false;
View.LayoutMargins = UIEdgeInsets.Zero;

Tam Ekran İçeriği
iOS 7, görünümlerinizi UIKit çubukları tarafından gizlenmeyecek ve ekranınızın görünür bir alanında olacak şekilde kısıtlamanın bir yolu olarak tanıtıldı topLayoutGuide bottomLayoutGuide. Bunlar iOS 11'de güvenli alan için kullanım dışı bırakılmıştır.
Güvenli alan, uygulamanızın görünür alanı ve bir görünüm ile süper görünüm arasında kısıtlamaların nasıl eklendiği hakkında yeni bir düşünme yöntemidir. Örneğin, aşağıdaki görüntüyü inceleyin:
Daha önce, bir görünüm eklediyseniz ve yukarıdaki yeşil alanda görünür olmasını isteseydiniz, bunu öğesinin TopLayoutGuide alt ve üst kısmıyla BottomLayoutGuidesınırlandırırdınız. iOS 11'de bunun yerine Güvenli Alan'ın üstüne ve altına sınırlamanız gerekir. Aşağıda bir örnek verilmiştir:
var safeGuide = View.SafeAreaLayoutGuide;
imageView.TopAnchor.ConstraintEqualTo(safeGuide.TopAnchor).Active = true;
safeGuide.BottomAnchor.ConstraintEqualTo(imageView.BottomAnchor).Active = true;
Tablo Görünümü
UITableView'da iOS 11'de birkaç küçük ama önemli değişiklik oldu.
Varsayılan olarak, üst bilgiler, alt bilgiler ve hücreler artık içeriğine göre otomatik olarak boyutlandırılır. Bu otomatik boyutlandırma davranışını geri çevirmek için , EstimatedSectionHeaderHeightveya EstimatedSectionFooterHeight değerini sıfır olarak ayarlayınEstimatedRowHeight.
Ancak bazı durumlarda (örneğin, Arabirim Oluşturucusu'nda mevcut Görsel Taslakları kullanırken UITableViewController eklerken) kendi kendine boyutlandırma hücrelerini el ile etkinleştirmeniz gerekebilir. Bunu yapmak için, tablo görünümünde sırasıyla Hücreler, Üst Bilgiler ve Alt Bilgiler için aşağıdaki özellikleri ayarladığınızdan emin olun:
// Cells
TableView.RowHeight = UITableView.AutomaticDimension;
TableView.EstimatedRowHeight = UITableView.AutomaticDimension;
// Header
TableView.SectionHeaderHeight = UITableView.AutomaticDimension;
TableView.EstimatedSectionHeaderHeight = 40f;
//Footer
TableView.SectionFooterHeight = UITableView.AutomaticDimension;
TableView.EstimatedSectionFooterHeight = 40f;
iOS 11, satır eylemlerinin işlevselliğini genişletti. UISwipeActionsConfiguration , kullanıcı tablo görünümündeki bir satırda herhangi bir yönde çekildiğinde gerçekleşmesi gereken bir dizi eylem tanımlamak için tanıtıldı. Bu davranış, yerel Mail.app benzerdir. Daha fazla bilgi için Satır Eylemleri kılavuzuna bakın.
Tablo Görünümleri, iOS 11'de sürükle ve bırak desteğine sahiptir. Daha fazla bilgi için Sürükleme ve Bırakma kılavuzuna bakın.

