【问题标题】:Odd problem with UIView touch handlingUIView 触摸处理的奇怪问题
【发布时间】:2011-03-23 23:56:18
【问题描述】:

对于我的 iPad 应用程序,我使用名为 SidebarViewControllerUIViewController 子类在边栏中显示一些内容。在边栏中,我有一个日历控件。我正在使用来自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


    【解决方案1】:

    在 XIB 中创建 KalView 而不是在代码中创建它似乎可以解决问题。这绝对看起来像一个错误,但我不知道在什么情况下可以复制它,所以我认为我不能提交它。

    【讨论】:

    猜你喜欢
    • 2010-11-06
    • 2011-02-18
    • 1970-01-01
    • 2010-12-02
    • 2012-05-13
    • 1970-01-01
    • 2015-01-27
    • 2017-07-19
    • 1970-01-01
    相关资源
    最近更新 更多