2012-10-31 31 views
0

我有一個表單視圖上的多個文本框。我想在用戶點擊一個按鈕時追加它們。但是隻有其中一個返回textfield中的值,其餘的返回null。多個UITextfields返回Null IOS

.H

@property (nonatomic, strong) IBOutlet UITextField *textMonth; 
@property (nonatomic, strong) IBOutlet UITextField *textDay; 
@property (nonatomic, strong) IBOutlet UITextField *textYear; 
@property (nonatomic, strong) IBOutlet UITextField *textMeetingName; 

.M

@synthesize textDay=_textDay; 
@synthesize textMonth=_textMonth; 
@synthesize textYear=_textYear; 
@synthesize textMeetingName=_textMeetingName; 


- (BOOL)disablesAutomaticKeyboardDismissal { 
    return NO; 
} 
//this dismiss keyboard on ios 
- (BOOL)textFieldShouldReturn:(UITextField *)textField { 

     [_textMonth resignFirstResponder]; 
     [_textDay resignFirstResponder]; 
     [_textYear resignFirstResponder]; 
     [_textMeetingName resignFirstResponder]; 


    return YES; 
} 
//submit create folder request to dropbox 
- (IBAction)sendCreateFolderRequest:(id)sender{ 

    if ([_textMonth.text intValue]>12 ||[_textMonth.text intValue]<1) { 
     //alertview choose a number between 1 and 12 
     [self popUpAlertview:@"Please choose a month between 1 and 12"]; 
    } 
    else if ([_textDay.text intValue]>31 || [_textDay.text intValue]<1){ 
     //alert view choose a number between 1 and 31 
     [self popUpAlertview:@"Please choose a day between 1 and 31"]; 
    } 
    else if ([_textYear.text intValue]<0){ 
     //alert view please enter a correct year 
     [self popUpAlertview:@"Please enter a correct year"]; 
    } 
    else if ([_textMeetingName.text length]<=1){ 
     //alert view meeting name is too short please enter a longer name 
     [self popUpAlertview:@"Name is too short. Please enter a longer name"]; 
    } 
    else{ 

     NSString *sendFolderName=[NSString stringWithFormat:@"/Up2Date/%@.%@.%@.%@",_textMonth.text,textDay.text,textYear.text,textMeetingName.text]; 

     NSLog(@"Send folder name %@",sendFolderName); 

    } 

} 

輸入是11,12,13,asdaad 輸出爲Send folder name /Up2Date/11.(null).(null).(null)

奇怪的是我,如果其他方法捕獲,如果字段值是錯誤的,如11, 45,20它彈出警報視圖,如我所料。

那麼,似乎是什麼問題?也許我不應該立即辭去他們的第一反應者?

回答

3

變化

NSString *sendFolderName=[NSString stringWithFormat:@"/Up2Date/%@.%@.%@.%@",_textMonth.text,textDay.text,textYear.text,textMeetingName.text]; 

NSString *sendFolderName=[NSString stringWithFormat:@"/Up2Date/%@.%@.%@.%@",_textMonth.text,_textDay.text,_textYear.text,_textMeetingName.text]; 

你忘了添加下劃線。

+0

omg !!我怎麼錯過了它:) –

+1

你錯過了,因爲你使用了下劃線。通常 - 只需使用'self.iVar'獲取和設置屬性值,除了initialisers和dealloc。這樣你就可以自由地執行而不用擔心如何使用它們。 – Abizern