我有一個UIViewController子類有一個UITextField。它從xib加載。但是,只要在初始化視圖(例如,在viewDidLoad)後嘗試訪問roomName實例變量,調試器就會將其顯示爲UITextInputTraits。UITextField更改爲UITextInputTraits
這是我的界面。
@interface AddRoomViewController : UIViewController <UITextFieldDelegate>{
IBOutlet UITextField *roomName;
id<AddRoomDelegate> *delegate;
}
- (IBAction)textFieldDidBeginEditing:(UITextField *)textField;
- (void) done;
@property (nonatomic, copy) UITextField *roomName;
@property (nonatomic, assign) id <AddRoomDelegate> *delegate;
@end
我是iOS開發新手,所以我確信我只是錯過了一個連接或其他東西,但我很難過。
編輯:據我所知,這是一個協議,但是當我試圖讓從UIText字段中的文本,我得到了以下錯誤:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UITextInputTraits text]: unrecognized selector sent to instance 0x4d16170'
'UITextField'符合'UITextInputTraits'協議。 http://developer.apple.com/library/ios/documentation/uikit/reference/UITextInputTraits_Protocol/Reference/UITextInputTraits.html#//apple_ref/occ/intf/UITextInputTraits – BoltClock 2011-04-23 20:25:04
不確定這部分問題是否存在,但我認爲在您的屬性定義中複製'UITextField'不是一個好主意。你爲什麼這樣做有一個特別的原因? – conmulligan 2011-04-24 01:42:30
確實是這個問題。我刪除了屬性定義(沒有理由爲什麼我在那裏),它的工作原理!隨意添加,作爲答案,我會很樂意接受它。謝謝! – talanb 2011-04-24 04:10:37