4

以前に作業していたと確信しているビューに追加している小さな 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];

     }
 }

シミュレーターで動作するため、コードを変更したものではないと思います。問題を次に探す場所がわからない。シミュレーターをリセットして、リセット後に壊れるかどうかを確認しました。私もプロジェクトをきれいにしました。

ありがとう。

ジョン

4

1 に答える 1

1

この行の後にブレークポイントを置きますUIImageView *bottomResizer = [[UIImageView alloc]...

次に、コンソールで「po [bottomResizer image]」

nil の場合、リソースがバンドルに正しくコピーされていないか、デバイスがロードできないイメージが破損している可能性があります。

于 2012-06-21T20:07:03.017 に答える