2009-07-21 76 views
0

我有一個類需要詢問用戶一個問題,並等待用戶響應以確定下一個操作。什麼是最好的方法來做到這一點?使用委託?怎麼樣?我有一個UITextField和一個UITextField。提示和委託問題

感謝

回答

1

這一切都取決於您希望用戶如何提交數據。用戶最友好的方式就是按TahoeWolverine解釋並實施- (BOOL)textFieldShouldReturn:(UITextField *)textFieldUITextFieldDelegate。爲了使用它,實現textFieldShouldReturn:的類在其接口聲明中必須具有<UITextFieldDelegate>協議;此外,相關文本字段必須將實施類設置爲其代表。在大多數情況下,這些應該是這樣的:

@interface SomeViewController : UIViewController <UITextFieldDelegate> { 
    UITextField *myField; 
} 

@property (nonatomic, retain) IBOutlet UITextField *myfield 
@end 

,並在地方執行:

[[self myField] setDelegate:self]; 

最後,實現UITextFieldDelegate協議:

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    if (textField == [self myField]) { 
     [self doSomethingWithText:[[self myField] text]]; 
    } 
} 

希望有所幫助。

+0

是的,我實際上在另一個應用程序中使用了textFieldShouldReturn,非常棒的建議。 – Xcoder 2009-07-22 14:14:45

0

是的,你應該使用一個委託,並鏈接到鍵盤的完成按鈕(我假設你正在呈現用戶鍵盤)。只需將您的委託關聯到鍵盤的返回鍵,那應該可以做到。