희망이 있습니다. 여러 개의 UIScrollView를 저장하려고 시도하는 NSMutableArray가 있습니다. 각 UIScrollView는 여러 이미지를 가지므로 궁극적 인 목표는 사용자를 허용 할 수있게하는 것입니다. 범주 (UIScrollView의 각 인스턴스)에 대해 세로로 스 와이프하고 해당 범주의 각 이미지 (UIImageView의 각 인스턴스)에 대해 가로로 스 와이프합니다. 지금은이 코드가 작동 할 때까지 1 개의 이미지로 1 개의 UIScrollView를 만들고 scrollViewManager에 추가하고 있습니다. 이것은 모든 것을 올바르게 추가하는 것처럼 보이지만,이 기능을 끝내면 게임이 종료됩니다. 내 배열이 비어 있습니다. 나는 이해하지 못한다. 내가 배열에 추가 할 때 일종의 깊은 복사를해야만 파괴되지 않습니다. 아마 내가 내일 일어날 때 나는 그것을 알아낼 것이다. 그러나 현재, 나는 모든 것을 부러워하고 싶다. 미리 감사드립니다.NSMutableArray 객체가 손실 됨
편집 : 세부 정보가 부족하여 죄송합니다. 늦게 게시했습니다. 내 프로젝트는 ARC를 사용하므로 어디서나 scrollView를 릴리스하지 않습니다. 하여있는 ScrollView를 초기화하는 코드와 배열은 여기
UIScrollView *test = (UIScrollView*) [self.scrollViewManager objectAtIndex: 0];
: 그리고 여기
@property (nonatomic, retain) NSMutableArray *scrollViewManager;
내있는 ScrollView를 검색하는 데 사용하는 코드입니다 : 여기 내 헤더 파일에 scrollViewManager에 대한 선언이다
scrollViewManager = [[NSMutableArray alloc] initWithCapacity: 1];
UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
[scrollView setBackgroundColor:[UIColor blackColor]];
[scrollView setCanCancelContentTouches:NO];
scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite;
scrollView.clipsToBounds = YES; // default is NO, we want to restrict drawing within our scrollview
scrollView.scrollEnabled = YES;
scrollView.pagingEnabled = YES;
NSString *imageName = @"pic1.png";//[NSString stringWithFormat:@"pic%d.jpg", i+1];
UIImage *image = [UIImage imageNamed:imageName];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
// setup each frame to a default height and width, it will be properly placed when we call "updateScrollList"
CGRect rect = imageView.frame;
rect.size.height = 400;
rect.size.width = 300;
imageView.frame = rect;
imageView.tag = 1; // tag our images for later use when we place them in serial fashion
[scrollView addSubview:imageView];
[self.scrollViewManager addObject: scrollView];
첫 번째 줄에는'scrollViewManager'가 있습니다. 메소드 끝에'self.scrollViewManager'가 있습니다. 어느 것이 오타입니까? – sosborn
scrollViewManager가 약한 속성으로 선언 되었습니까? – lnafziger
게시 한 코드는 괜찮습니다. 자세한 내용을 표시해야합니다 :'scrollViewManager'의 범위는 무엇입니까? 어디에서 어떻게 선언됩니까? 위의 코드를 실행 한 후 빈'scrollViewManager'를 반환하는 호출 코드의 예는 무엇입니까? – Joel