1

このコードを書きました。しかし、機能していません...

はい、NSLog は適切な日付で表示されます。

Datepicker も日付を見て選択します。しかし、日付を選択しても、ボタンのタイトルと日付ピッカーは何も変更されず、画面に残ります。ユーザーが日付を選択したときにも非表示にしたい...

実際には、ユーザーがボタンを押して日付を選択し、タイトルをボタンに設定してピッカービューを解放すると、日付ピッカービューが表示されます。ios5を使ってい...

[datePicker setHidden:NO];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"MM/dd/yyyy"];

NSString *dateString = [dateFormatter stringFromDate:[self.datePicker date]];

   NSLog(@"\n"
      "theDate: |%@| \n"
       , dateString);
[self.DOBbutton setTitle:dateString forState:UIControlStateNormal];
4

3 に答える 3

1

これを試して

交換してください

    [self.DOBbutton setTitle:dateString forState:UIControlStateNormal];  

   DOBbutton.titleLabel.text =dateString;

ボタンがxibに接続されているかどうかを確認してください

于 2013-04-16T07:06:23.363 に答える
0

タイトルがDoneのボタンを設定し、ユーザーがその時点でDoneを選択すると、次のメソッドが呼び出されます...

-(IBAction)btnDone_Clicked:(id)sender
{
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.3];
    NSString *dateString =[[yourDatePicker date] stringFromDateWithFormat:@"MM/dd/yyyy"];
    [yourButton setTitle:dateString forState:UIControlStateNormal];
    [yourDatePicker setHidden:YES];
    [UIView commitAnimations];
}

これは、日付の形式を変更して文字列に変換するのに役立つ私のカスタムメソッドです..

-(NSString*)stringFromDateWithFormat:(NSString*)strDateFormat{
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
     //[formatter setTimeZone:[NSTimeZone systemTimeZone]];
    [formatter setDateFormat:strDateFormat];
    NSString *str = [formatter stringFromDate:self];
    [formatter release];
    return str;
}
于 2013-04-16T07:07:36.650 に答える