2012-03-17 3 views
1

私は誕生日を年なしで追加する方法を考えています(つまり、1985年5月5日ではなく5月5日)。これは可能ですか?kABPersonBirthdayPropertyを年なしでアドレス帳に保存しますか?

NSDateFormatter *df = [[NSDateFormatter alloc] init]; 
[df setDateFormat:@"MM/dd/yyyy"]; 
NSDate *date = [df dateFromString:[result valueForKey:@"birthday"]]; 

if(date == nil) 
{ 
     df = [[NSDateFormatter alloc] init]; 
     [df setDateFormat:@"MM/dd"]; 
     date = [df dateFromString:[result valueForKey:@"birthday"]]; 
} 

ABRecordSetValue(person, kABPersonBirthdayProperty, (__bridge CFDateRef)date, nil); 

は1970がデフォルト日付文字列に添付何年がない場合はそれがすべてで可能です場合、私はそれがアドレス帳に年なしにそれを載せていきたいと思います。

誰でも知っていますか?

答えて

0

恐れることはありません。現在の年またはUNIXの参照日付を使用するだけで、少なくとも1日と1か月の権利が得られます。

3

誕生日を1か月だけの連絡先(連絡先アプリを通じて)に設定できます。年は1604に設定され、表示されません。 ABRecordSetValue()を実行する前に年を1604に設定すると、連絡先アプリで連絡先を表示するときに誕生日が「5月5日」と表示されます。これは、Appleが「年なし」を指定しているように見えます。それを表示する予定がある場合は、手動で日付を後でチェックする必要があります。そうしないと、1604年が表示されます。

1

誕生日の年を1604に設定すると、これはグレゴリオ暦でのみ機能します。

詳細はthis question and answerを参照してください。

関連する問題