2017-07-12 9 views
0

私は、オブジェクトの配列を持っているが、だから私は、セルの日付は予約配列内のいくつかの日付と等しいかどうかを確認する必要があります予約ハイライト日、アレイ内の日付に等しいdate場合(JTAppleCalendar)

class MonthBookings: NSObject { 

    var date: Date = Date()  
    var bookings_count: Int = 0 
} 

var bookings = [MonthBookings]() 

が含まれている、セルを変更セル内のこの日付の色。

私がダウンして、以下のこの方法を試してみましたが、うまくいきませんでした:

func calendar(_ calendar: JTAppleCalendarView, willDisplayCell cell: JTAppleDayCellView, date: Date, cellState: CellState) { 
    guard let sfbCell = cell as? SFBCalendarCell else {return} 

    let booking = self.bookingsMonths[cellState.row()] 

    if booking.date == date { 
     sfbCell.dayText.textColor = .red 
    } else { 
     sfbCell.dayText.textColor = .black 
    } 
} 

答えて

0

は、私が使用してそれを解決する方法が含まれている方法に

if bookingsMonths.contains(where: { $0.date == cellState.date && $0.bookings_count != 0 }) { 

     sfbCell.dayText.font = UIFont.boldSystemFont(ofSize: 15) 

} else { 

     sfbCell.dayText.font = UIFont.systemFont(ofSize: 15) 

} 
0

あなたは比較dayや実際の日付/時刻をやっていますか? このようなものを試してみてください。私が使用することにより解決

let order = CalendarManager.currentCalendar.compare(cellState.date, to: 
Date(), toGranularity: .day) 
    if order == .orderedSame { 
    calendarCell.dayNumberLabel.textColor = UIColor.white 
    } 
+0

が含まれています –

関連する問題