2017-01-23 48 views
1

私のプロジェクトでFSCalendar(https://github.com/WenchaoD/FSCalendar)を使用しました。ユーザーがリピートボタンをクリックすると、イベントは毎日繰り返されます。私は自分のアプリケーションにあるカレンダーに表示したいと思います。どうしたらいいですか?プログラムで日付を選択してFSCalendarに表示する方法

+0

Eventkitについて最初に読んでください。チュートリアル - > https://www.raywenderlich.com/64513/cookbook-making-calendar-reminderのこのリンクを確認することができます。 – commando24

+0

あなたは私が間違っていることを理解しています。私はFSCalendarを使って自分のリマインダーアプリケーションが必要です。 – slytrkmn

答えて

0

残りのアプリについては、次のことを行うか、使用する必要があります。

1.RealmまたはCore Data - データの永続性。

2.ローカル通知 - ユーザーに何らかのイベントが発生したことを通知します。 UILocalNotificationには、1つのプロパティfireDateというプロパティが必要です。

+0

私は通知をしたくない、私は私のアプリケーションにあるカレンダーに表示したい。私はFSCalendarを使用します。 https://github.com/WenchaoD/FSCalendar。 – slytrkmn

+0

あなたの問題はカレンダーに表示する方法です...? – commando24

+0

はい、カレンダーに表示します。 – slytrkmn

0

あなたはその情報(スケジュールされた日付)を保持しているか分かりませんが、のドットを簡単に追加することができます。(またはそれ以上の場合は、 )以下のデリゲートで:

`func calendar(calendar: FSCalendar, numberOfEventsForDate date: NSDate) -> Int { 
    let formatter = NSDateFormatter() 
    formatter.dateFormat = "MM-DD" 
    let date1 = formatter.stringFromDate(yourDate) 
    let date2 = formatter.stringFromDate(date) 
    return date1 == date2 ? 1 : 0 
}` 

この方法はFSCalendar代議員の一つであり、それは(それらの一つ一つがdate変数で表される)現在の月のすべての日を反復します。任意の所与の日付が比較のために等しくなるようNSDateFormatterで月 - 日フォーマットを介して文字列にそれらの両方を変換することによってもNSDateなければならないyourDate変数に等しい場合、私は比較だ上記の例ですべての月。 trueの場合は1を返します(これは1ドットを示します。必要に応じてそれ以上のものを変更することもできます)。そうでなければ、特定の日付の0ドット下に戻ります。

このコードはSwift 2.3に準拠しています。

1

日付を選択する場合は、以下の方法が便利です ここでカレンダーはFSCalendarのアウトレットです。

calendar.select(calendar.today)

そして、あなたはその後、複数の日付を選択する場合の最善の方法は、イベントのドットを使用することであろう、そしてそれはFSCalendarデータソースの下にデリゲートメソッドを介して可能にすることができ、

func calendar(_ calendar: FSCalendar, numberOfEventsFor date: Date) -> Int { //number of dots you want to show }

または選択した日付を実際に表示したい場合は、以下の方法をスマートに使い、選択したい日付に異なる色を戻すことができます。

public func calendar(_ calendar: FSCalendar, appearance: FSCalendarAppearance, fillDefaultColorFor date: Date) -> UIColor? 
{ 
    if your date 
    { 
     //return the colour for your dates 
    } 
    else 
    { 
     //return default colour 
    } 
} 

希望、この回答はあなたに役立ちます。

関連する問題