0

次の形式を使用してカレンダーにイベントを追加するときに、Calendar Alert に次のように追加します。

  "1 day before",

しかし、私は

  "At the time of event"

ここに私のコード、

calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSString *cday,*cmonth,*cyear;
// set today
today = [[NSDate alloc] initWithTimeIntervalSinceNow:1];
//set the current day to show the calendar
NSDateFormatter *temp1 = [[NSDateFormatter alloc] init];
[temp1 setDateFormat:@"dd"];
cday=[temp1 stringFromDate:today];
NSLog(@"Date checking%@",cday);
[temp1 release];

私のコードで何が問題なのですか?

4

1 に答える 1

0

おそらくタイムゾーンと関係があります。おそらく、NSDateFormatter オブジェクトの timeZone プロパティに適切な値を設定する必要があります。タイム ゾーンをローカル タイム ゾーンに設定してください。

[temp1 setTimeZone:[NSTimeZone systemTimeZone]];

(or)

[temp1 setTimeZone:[NSTimeZone localTimeZone]];

このコードを入れてください:

 NSCalendar  *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
    NSString *cday,*cmonth,*cyear;
    // set today
    NSDate *today = [NSDate date];
    //set the current day to show the calendar
    NSDateFormatter *temp1 = [[NSDateFormatter alloc] init];
   [temp1 setTimeZone:[NSTimeZone localTimeZone]];
    [temp1 setDateFormat:@"dd"];
    cday=[temp1 stringFromDate:today];
    NSLog(@"Date checking%@",cday);
    [temp1 release];
于 2013-03-21T10:11:26.573 に答える