내 프로젝트에 https://github.com/WenchaoD/FSCalendar을 사용하고 있습니다. MaximumSelectedDate는 읽기 전용 속성입니다. 그런 다음 어떻게 미래 날짜를 비활성화 할 수 있습니까?FScalendar swift에서 미래 날짜 선택 사용 안 함
1
A
답변
1
FSCalendar
메서드 파일을 수정하면 문제가 해결 될 수 있습니다. 먼저 부울 변수를 확인 isAllowedToLimitFutureDates
말하고 문자열 maxValidFutureDateAsString
변수 다음 라인 172-this link의 변경 :
if(!isAllowedToLimitFutureDates)
{
_maximumDate = [self.formatter dateFromString:@"2099-12-31"];
}
else
{
_maximumDate = maxValidFutureDateAsString; // say "2017-03-13"
}
그래서 당신이 날짜 isAllowedToLimitFutureDates = true
을 설정 제한 할 때.
비슷한 접근 방식은 당신이 포드 파일을 편집하여 사용할 수없는 경우 1707
줄을, 당신은이 컨트롤을 사용자 정의하고이를 대체 할 수 있습니다.
희망 하시겠습니까?
0
당신은 해결하기 위해 위임 방법을 사용한다이
func maximumDate(for calendar: FSCalendar) -> Date {
return Date()
}
0
, 모두
최소 및
최대 날짜의 대리인은 당신이해야 할 모든 적절한 구현되어있다
@Devraj의 대답은 정확 하나 (귀하의 경우에는 나중에 하나) 컨트롤러에 FSCalendarDelegate
을 준수하고 그 트릭을 할거야.
func maximumDateForCalendar(calendar: FSCalendar) -> NSDate { return NSDate() // NSDate of your choosing here }
0
스위프트 3
에 대한fileprivate lazy var dateFormatter2: DateFormatter = {
let formatter = DateFormatter()
formatter.dateFormat = "dd-MM-yyyy"
return formatter }()
let today = dateFormatter2.string(from: calendar.selectedDate!)
let dateObj = dateFormatter2.date(from: today)
if dateObj! > calendar.today! {
// Your logic here
}
감사합니다 .. 몬. 그것의 일 벌금. – Sreekanth
그레이트! .. 다행입니다! – NeverHopeless