UİKeyboardBoundsUserİnfoKey yerine kullanmak ne?kaldırılmış.
Bir iPad app 3.2 sdk kullanarak üzerinde çalışıyorum. Klavye arkasında ise gizleniyor benim TextField öğeleri önlemek için boyutu elde etme ile uğraşıyorum.
Böyle büyük mükafat olarak bir Uyarı - ^ alıyorum . UİKeyboardBoundsUserİnfoKey kaldırılmış ben onun yerine bu uyarı almak için ne gerekir?
CEVAP
UIKeyboardBoundsUserInfoKey
documentation
Bir NSValue için anahtar penceresinde klavyenin dikdörtgen koordinatları, sınırları tanımlayan bir CGRect içeren nesne. Bu değer, klavye boyutunu elde etmek için yeterlidir. Eğer ekrandaki klavye (veya animasyon öncesi ve sonrası) kökeni kullanmak istiyorsanız değerleri UİKeyboardCenterBeginUserİnfoKey ile sözlük bilgi kullanıcı veya UİKeyboardCenterEndUserİnfoKey sabitleri elde edilir.Bu UİKeyboardFrameBeginUserİnfoKey kullanmak ya da anahtar yerine UİKeyboardFrameEndUserİnfoKey.
Apple bir kolaylık bu Kategori UIScreen
ek olarak uygulayabileceği gibi: rutin uygulama önerir
(CGRect) convertRect:(CGRect)rect toView:(UIView *)view {
UIWindow *window = [view isKindOfClass:[UIWindow class]] ? (UIWindow *) view : [view window];
return [view convertRect:[window convertRect:rect fromWindow:nil] fromView:nil];
}
kurtarmak için pencere-ayarlanabilir klavye çerçeve boyutu özellikleri.
Cihazın yönünü kontrol içeren farklı bir yaklaşım aldı:
CGRect _keyboardEndFrame;
[[notification.userInfo valueForKey:UIKeyboardFrameEndUserInfoKey] getValue:&_keyboardEndFrame];
CGFloat _keyboardHeight = ([[UIDevice currentDevice] orientation] == UIDeviceOrientationPortrait || [[UIDevice currentDevice] orientation] == UIDeviceOrientationPortraitUpsideDown) ? _keyboardEndFrame.size.height : _keyboardEndFrame.size.width;
Bir yapılandırma dosyası kullanmak yer...
Ne zaman TCP yerine UDP kullanmak için...
Neden dizi indis yerine kullanımına ku...
Neden DOM sadece <script> bir öğ...
Aktörler kullanmak yerine Eclipse MQ y...