我曾經有我的UIView
可以很好地處理下面的幾個代表。現在我將UIView
從IB
更改爲UIScrollView
(現在用作主視圖)。UIScrollView對代表沒有響應
由於我已更改爲UIScrollView
我的活動代表(如下面的代表不再工作)。比如鍵盤,還有我可以移動的元素,而不是靜態的。
我將所有代表都分配給了IB,我可以想到並做了大部分我知道的事情。但我爲什麼事件沒有得到觸發想法用盡...
如果我回到舊的UIView
通過做cmd + z
他們的工作。
任何人都可以指出我在正確的方向?
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *) event
{
[self.view endEditing:TRUE];
}
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView {
// register for keyboard notifications
return YES;
}
編輯 - 補充回答:
@Wezly
答案是完全有效的。 但如果有人不想繼承UIScrollView
並只使用UITextFieldDelegate
方法。
這樣做也加入到viewDidLoad
的另一種方式:
注意:您仍然無法訪問很多東西,但它的另一個解決辦法
///
/// DelegateNotifications
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillShow:)
name:UIKeyboardWillShowNotification
object:self.view.window];
// register for keyboard notifications
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:self.view.window];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(textFieldDidEndEditing:)
name:UITextFieldTextDidEndEditingNotification
object:self.view.window];
你有申報? –
sangony
yes.' @interface myProfileEditController:UIViewController' –
*代表*是一個對象,而不是一個方法。如果您正在討論委託人預期會響應的方法,請使用*委託方法*。如果您正在討論委託符合的接口,請使用*委託協議*或委託接口*。 – Caleb