SORU
23 AĞUSTOS 2010, PAZARTESİ


Nasıl Apple iPhone ile UİKeyboard boyutu SDK almak için

Bir şekilde UİKeyboard boyutu programlama yoluyla elde etmektir. Yükseklik ve 162.0 f yatay yükseklik 216.0 f.

Aşağıdaki depricated gibi görünüyor. Hem 3.0 herhangi bir uyarı olmadan çalışan bir yol SDK ve iPhone OS 4.0 iPhone SDK bunu yapmak için.. işletim sistemi var

CGSize keyBoardSize = [[[note userInfo] 
objectForKey:UIKeyboardBoundsUserInfoKey]CGRectValue].size;

Teşekkürler Tharindu

CEVAP
16 Mart 2011, ÇARŞAMBA


userInfo sözlükten klavye boyutuUİKeyboardFrameBeginUserİnfoKeyveUİKeyboardFrameEndUserİnfoKeyyerine.

Bu iki anahtar, başlangıç NSValue bir örnek klavyenin konumunu ve boyutunu tutan CGRect döndürecektir ve klavyenin Haritayı noktaları son/animasyon gizle.

Düzenleme:

Açıklığa kavuşturmak için, userInfo sözlük geliyorNSNotificationörnek. Bir gözlemci ile kayıt yöntemine geçti. Örneğin,

- (void)someMethodWhereYouSetUpYourObserver
{
    // This could be in an init method.
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(myNotificationMethod:) name:UIKeyboardDidShowNotification object:nil];
}

- (void)myNotificationMethod:(NSNotification*)notification
{
    NSDictionary* keyboardInfo = [notification userInfo];
    NSValue* keyboardFrameBegin = [keyboardInfo valueForKey:UIKeyboardFrameBeginUserInfoKey];
    CGRect keyboardFrameBeginRect = [keyboardFrameBegin CGRectValue];
}

Edit 2:

Ayrıca, lütfen dealloc yöntem gözlemci olarak kendinizi kaldırmak için unutmayın! Bu bildirim merkezi oldu serbest sonra nesne bildirmek için çalıştığında oluşacak bir kaza önlemek için.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andrew_Huang

    Andrew_Huang

    10 ŞUBAT 2006
  • Snazzy Labs

    Snazzy Labs

    9 Aralık 2008
  • The Computer Chronicles

    The Computer

    7 Kasım 2012