Search code examples
uiviewcocos2d-iphoneuitextfieldtextfielduitextfielddelegate

Add UITextFieldDelegate in cocos2d?


There are a lot of similar questions and answers, but they don't solve the main problem: how to properly add any text field in cocos2d with its workable delegate.

For example if I create UITextfield and simply add it to [[CCDirector sharedDirector] view] then it will call textFieldShouldReturn: method only. No more methods doesn't work, even textViewDidBeginEditing:

I gave the same result with using of separate view and UITextField. I also tried to create a separate UIViewController to use its view with UITextField but it even make my app falling down


Solution

  • My mistake was that UITextFieldDelegate and UITextViewDelegate have some similar mehods, and I used some methods from the second delegate. Example:

    - (BOOL)textViewShouldBeginEditing:(UITextView *)textView;
    - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;
    

    Of course I wrote (UITextView *)textField at the end.