UIScreen'a bir göz atın. Örn.,
örn. Eğer (genişlik etkilemez) Durum çubuğu dahil istemiyorsanız
CGFloat width = [UIScreen mainScreen].bounds.size.width;
applicationFrame tesiste bir göz atın.
GÜNCELLEME: UIScreen (-bounds veya -applicationFrame) mevcut arabirim yönelimini dikkate almaz. UIView'inizin kendi sınırları için sorulması daha doğru bir yaklaşım olacaktır; bu UIView'in View denetleyicisi tarafından otomatik olarak döndürüldüğü varsayılarak.
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
CGFloat width = CGRectGetWidth(self.view.bounds);
}
görünüşüdür View Controller tarafından otomatik olarak döndürülmesi değilse o zaman görünüşüdür sınırları hangi kısmının belirlenmesi arayüz yönünü kontrol etmek gerekir width ve height temsil eder. Çerçeve özelliğinin, UIWindow'un (varsayılan olarak) arabirimin yönünü dikkate almayacak olan koordinat alanındaki görünümün rektini vereceğini unutmayın.
(sistem çubuğu olmadan) ekranın genişliği, mevcut uygulama alanı genişliği mı yoksa senin Aradığınız belirli bir bakış genişliği? – VdesmedT
hrmm Emin değilim. Ben sadece cihazın genişliğini istedim sanırım (yani dikey genişlik ve 1024 için genişlik için ipad 768) ama self.view.bounds bunu tatmin görünüyordu. Aşağıda yorumumu gör – foreyez
Cihazın yönünü dikkate alan daha kapsamlı bir yanıt (http://stackoverflow.com/a/7905540/17339). –