刪除的UIImageView在我的應用程序,當用戶觸摸屏幕時,我把一個UIImageView
在屏幕上是這樣的:從它的父
- (void) drawPoint:(CGPoint) toLocation {
UIImageView *image = [[UIImageView alloc] initWithFrame:CGRectMake(toLocation.x, toLocation.y, SIZE_X, SIZE_Y)];
image.tag = 1;
[image setImage:[UIImage imageNamed:@"point.png"]];
[self.myView addSubview:image];
[image release];
}
這裏MyView
是UIView
。
當用戶完成感人,我想刪除我的UIImageView
。我曾經嘗試這樣做:
- (void) removeFromPoint:(CGPoint) location{
UIImageView *image;
[[image viewWithTag:1] removeFromSuperview];
}
或
- (void) removeFromPoint:(CGPoint) location{
UIImageView *image = (UIImageView *)[self.MyView viewWithTag:1];
[image removeFromSuperview];
}
但他們兩人在EXC_BAD_ACCESS結束。 你知道我該怎麼做到這一點?
謝謝。
告訴我們MyView的財產 – 2011-02-06 17:53:16
的聲明是什麼調用堆棧看,當你`EXC_BAD_ACCESS`什麼樣的?你可以在GDB中看到它,它會告訴你誰試圖在其銷燬後訪問一個對象。 – 2011-02-06 17:54:13
在第一個塊中接收到一個'EXC_BAD_ACCES`不應該感到驚訝:您正在向`removeFromPoint:`中的未初始化對象發送消息。你的圖像變量只包含一些垃圾,你不能發送任何東西!在你的第二部分代碼中,我想你可能犯了一個錯字:`self.MyView`應該是`self.myView`。 – v1Axvw 2011-02-06 20:00:09