2016-03-29 11 views
-1

ユーザー登録後3か月間、一部の通知をスケジュールしようとしています。まず、登録後最初の朝を定義する必要があります。 私を助けることができますか?ユーザー登録後すぐに翌朝を定義するにはどうすればいいですか?

+6

出先があったことを示してください - いくつかのコードを書いて、それを投稿してください。 –

+2

あなたのサーバーからの登録のタイムスタンプを取得し、それをNSDateに変換します。 NSDateComponentsに分割します。月のコンポーネントに3か月を追加します。これらのコンポーネントから新しい日付を作成します。そのNSDateのローカル通知をスケジュールします。 – NSNoob

答えて

0

ローカル通知をスケジュールします。

let localNotif = UILocalNotification() 
let calendar = NSCalendar.autoupdatingCurrentCalendar() 
let dateComps = NSDateComponents() 

dateComps.day = registrationDate.day 
dateComps.month = registrationDate.month 
dateComps.year = registrationDate.year 
dateComps.hour = 9 
dateComps.minute = 0 

let itemDate = calendar.dateFromComponents(dateComps) 

localNotif.fireDate = itemDate.dateByAddingTimeInterval(24.0 * 60.0 * 60.0) 
localNotif.timeZone = NSTimeZone.defaultTimeZone() 

localNotif.alertBody = "Good Morning new user!" 
localNotif.alertAction = "View details" 
localNotif.alertTitle = "Good morning" 

localNotif.soundName = UILocalNotificationDefaultSoundName 
localNotif.applicationIconBadgeNumber = 1 

UIApplication.sharedApplication().scheduleLocalNotification(localNotif) 

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/IPhoneOSClientImp.html

+0

返信ありがとうございます。 –

+0

1:00か18:00かどうかは登録後に翌朝7:00を定義するだけです。次の午前7時は、約24時間後または2時間後でさえあり得る。 –

+0

私の例では、登録日に9時に設定されています。その後、その日に24時間を追加するので、翌朝には常に9:00です。 – Tapani

関連する問題