나는 UIView 인스턴스를 만드는 UIViewController 클래스가 있습니다. 그런 다음 이미지 (1, 2, ..., 25)가 포함 된 25 개의 하위보기로 초기화 (채우기를 의미)합니다. 그런 다음이 이미지에서 5 번 클릭 한 후 내가 사용했던 함수를 호출했습니다.Subview 제거하고 객관적인 C/아이폰에 추가
for(UIView *subview in [contentView subviews]) {
[subview removeFromSuperview];//ContentView name of my view
}
이전에 추가 된 하위 뷰를 제거하려면 다음을 수행하십시오. 그리고 나서 나는 같은 approch을 사용하여 25 개의 새로운 하위 뷰 (이미지 1,2,3, .... 25)를 추가합니다. 그러나 이번에는 하위 뷰가 추가되지 않습니다. 누군가 plz 나를 추가 & 하위보기를 제거하는 전체 코드를 제공 할 수 있습니까?
내가 먼저 내가 처음으로 두 번째 시간을 추가하기 위해 같은 approch을 사용
//create main window
contentView = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
contentView.backgroundColor = [UIColor blackColor];
self.view = contentView;
[contentView release];
//adding 25 subview 1st time
int a=0;
int b=0;
for (int i = 0; i < 26; i++)
{
CGRect dragRect = CGRectMake(0.0f, 0.0f, x, y);
dragRect.origin = CGPointMake(a,b);
DragView *dragger = [[DragView alloc] initWithFrame:dragRect];
NSString *Flower = [[NSArray arrayWithObjects:@"1.png", @"2.png", @"3.png",@"4.png", @"5.png", @"6.png",@"7.png",@"8.png", @"9.png",@"10.png", @"11.png", @"12.png",@"13.png",@"14.png",@"15.png",@"16.png",@"17.png",@"18.png",@"19.png",@"20.png",@"21.png",@"22.png",@"23.png",@"24.png",@"25.png",@"26.png", nil] objectAtIndex:i];
[dragger setImage:[UIImage imageNamed:Flower]];
[dragger setUserInteractionEnabled:YES];
[self.view addSubview:dragger];
[dragger release];
a+=10;
b+=10;
}
//then removing 25 subview
//adding 25 subview 2nd times
하위 뷰를 추가 할 때 다음 코드를 사용하고 있지만, 문제는 내가 25 하위 뷰를 제거 할 때 다음 25을 추가 할 것입니다 하위보기,이 하위보기는 추가/표시되지 않으며보기는 동일하게 유지됩니다. 나는이 문제에 피곤하다. plz 누군가 나를 도와주세요.
배열을 수정 이전 뷰를 제거하려면이 코드를 사용해보십시오 그걸로. 일부 UI 버전에서'[UIView subviews]'가보기를 보유하는 개인 가변 배열을 반환하는 문제가 수정되었습니다. –