Bre*_*ett 8 iphone objective-c uikeyboard
我有一个具有三级UIViewControllers的向下钻取导航应用程序.在每个视图控制器中,我有一个UITextField,我试图为每个视图控制子类UIKeyboard.我的问题是在哪里"设置"通知并"取消设置"它们.
我有通知:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
Run Code Online (Sandbox Code Playgroud)
所以最好在viewDidLoad事件中设置它们?还是viewWillAppear事件?
同样如此 [[NSNotificationCenter defaultCenter] removeObserver:self];
我不希望在keyboardWillShow:
向下钻取时调用多个事件.
非常感谢,布雷特
我建议你把这些在init
和dealloc
方法,因为viewWillAppear
和viewWillDisappear
将被称为每次视图出现或消失的时间,这是不必要的登记/注销的通知.
我建议你注册为观察者viewWillAppear
并注销,viewWillDisappear
因为viewDidUnload
只有当内存必须被释放时才被调用,这意味着viewDidLoad
被调用的次数要多得多viewDidUnload
,然后你可能会遇到多次获得相同通知的问题.
归档时间: |
|
查看次数: |
6645 次 |
最近记录: |