0

我正在尝试自定义一个日历程序(最初是为 iPhone 编写的),我发现(http://code.google.com/p/iphonecal/)可以在 iPad 上工作。它是使用控制器和 UIView 的 .xib 文件编写的。

出于某种原因,它不会在整个视图右侧 2/3 的任何位置“触发” touchesEnded 。使用 iPhone 模拟器时效果很好,但 iPad 模拟器不行。

我的理解是touchesEnded监控整个视图,但在这种情况下似乎没有这样做。

关于可能导致这种情况的任何想法?

更新:它回来了......我重置了模拟器,做了一个干净的重新构建,问题又回来了。这是 UIView 右侧甚至没有触及的代码:

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//--  touchesEnded
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event  {

    int width = self.frame.size.width;

    UITouch* touch = [touches anyObject];
    CGPoint touchPoint = [touch locationInView:self];
    //UIView* theview=[self hitTest:touchPoint withEvent:event];

    if(touchPoint.x < 40 && touchPoint.y < headHeight)
        [self movePrevMonth];
    else if(touchPoint.x > width - 40 && touchPoint.y < headHeight)
        [self moveNextMonth];
    else if(touchPoint.y > headHeight)  
        [self touchAtDate:touchPoint];

}
4

1 回答 1

0

我发现了问题...这两个 .xib 文件都没有设置为使用 iPad...我在这里找到了答案,它向我展示了如何更改 .xib 文件的源代码...它现在可以工作了像一个冠军!

于 2012-06-19T17:24:44.277 回答