В своем приложении для iPad я использую подкласс UIViewController
с именем SidebarViewController
, чтобы отобразить некоторые элементы на боковой панели.В боковой панели у меня есть элемент управления календаря.Я использую компонент Kal с открытым исходным кодом из http://github.com/klazuka/Kal. В методе -viewDidLoad
для SidebarViewController
я создаю новый экземпляр KalView
(основной вид для календаря) и добавляю его какподпредставление вида SidebarViewController
:
_logic = [[KalLogic alloc] initForDate:[NSDate date]];
_calendarView = [[KalView alloc] initWithFrame:CGRectMake(0.0, 62.0, 273.0, 239.0) delegate:self logic:_logic];
KalDate *currentDate = [KalDate dateFromNSDate:[NSDate date]];
[_calendarView selectDate:currentDate];
[self.view insertSubview:_calendarView atIndex:0];
Календарь отображает и все, но есть одна проблема.Основным компонентом календаря является KalGridView
, который является подпредставлением KalView
.Он отображает плитки даты и т. Д. При запуске приложения по какой-то причине KalGridView
не получает прикосновения.Прикосновения перехвачены видом SidebarViewController
.Как ни странно, если я нажму на кнопку изменения месяца в верхней части календаря, чтобы изменить месяц, KalGridView
снова начнет получать прикосновения.
Я не могу понять, почему это происходит, потому что ни одна из других подпредставлений SidebarViewController
не подвержена той же проблеме.