我在视图中添加了一个小png,我可以肯定我以前曾经工作过,但是突然停止在iPad本身上工作,同时继续在iPad模拟器上正常工作。

这是我用来将图像添加到视图中的代码...

  UIImageView *bottomResizer = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"resizeLine.png"]];
  bottomResizer.center = CGPointMake(bottomResizer.center.x, bottomResizer.center.y+self.frame.size.height-12);
  bottomResizer.tag = 301;
  [self addSubview:bottomResizer];
  [bottomResizer release];


这发生在UIGestureRecognizerStateBegan事件中。以下代码中的代码在touchesEnded事件中删除了图像,即使您看不到它也没有任何错误。

 NSArray *subViews = [self subviews];
 int count = [subViews count];
 for (int i =count-1; i>=0; i--) {
     if([[subViews objectAtIndex:i] tag] == 301) {
         [[subViews objectAtIndex:i] removeFromSuperview];

     }
 }


我不认为这是我在代码中更改的任何内容,因为它可以在模拟器中使用。不确定接下来要在哪里寻找问题。我已经重置了模拟器,以查看重置后它是否会崩溃。我还清理了项目。

谢谢。

约翰

最佳答案

在此行之后放置一个断点UIImageView *bottomResizer = [[UIImageView alloc]...

然后在控制台上“ po [bottomResizer图像]”

如果为零,则说明资源未正确复制到捆绑中,或者您的设备可能无法加载损坏的映像。

10-06 13:00