2012-03-09 64 views
0

これは私のコードです:キーボードを隠すのにテキストフィールドが反応しないのはなぜですか?

- (BOOL) textFieldShouldReturn:(UITextField *)textField { 
    [txtSiteDesc resignFirstResponder]; 
    [txtDesc resignFirstResponder]; 
    [ssFS resignFirstResponder]; 

    return YES; 

}

これは.hファイルである:それは他人の任意のtxtSiteDescの作品ではなく、

#import <UIKit/UIKit.h> 

@interface slEnterDataViewController : UITableViewController <UITextFieldDelegate> { 

    UITextField *txtSiteDesc; 
    UITextField *txtDesc; 
    UITextField *ssFS; 
} 

@property (nonatomic, retain) IBOutlet UITextField *txtSiteDesc; 
@property (nonatomic, retain) IBOutlet UITextField *txtDesc; 
@property (nonatomic, retain) IBOutlet UITextField *ssFS; 

@end 

。問題はtextFieldShouldReturnメソッド内にあると仮定します。私は "textField"の値をチェックして、それがどのフィールドであるかを確認し、適切な "resignFirstResponder"を実行して戻ることができると考えました。私は近くにいる(私は思うが)十分に近いところではない。

助けていただければ幸いです。 :D

答えて

0

txtSiteDescの代理人を設定できますが、他の2つのテキストフィールドには代理人を設定できませんか?これは、最初のテキストフィールドにtextFieldShouldReturn:が呼び出された理由を説明します。 3つのテキストフィールドのdelegateプロパティをself(self =あなたのView Controller)に設定していることを確認してください。

+0

ありがとうございました...今すぐチャンピオンのように動作します!私はあなたの助けに感謝しています...:D – SpokaneDude

0

でも、この問題に直面しました。あなたがリターンを押すと、キーボード上などで行わ/キーボードを非表示になります

- (BOOL)textField:(UITextField *)theTextField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string 
{ 
    if([string hasSuffix:@"\n"]) 
    { 
     [theTextField resignFirstResponder]; 
     return NO; 
    } 
    return YES; 
} 

この:これは、あなたが探しているものです。

関連する問題