【发布时间】:2011-03-23 23:56:18
【问题描述】:
对于我的 iPad 应用程序,我使用名为 SidebarViewController 的 UIViewController 子类在边栏中显示一些内容。在边栏中,我有一个日历控件。我正在使用来自http://github.com/klazuka/Kal 的开源 Kal 组件。在SidebarViewController 的-viewDidLoad 方法中,我正在创建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 的其他子视图都没有受到相同问题的影响。
【问题讨论】:
标签: iphone cocoa-touch ipad uiview ios