내 응용 프로그램에서 메모리 문제에 약간 문제가 있습니다.
코딩 기술이 완벽하지 않습니다.
내 코드는 정말 필요한 네 번 메모리를 사용합니다.
코딩 방법을 변경하려면 어떻게해야합니까?배열에 이미지 이름을 어떻게 추가 할 수 있습니까?
내 코드는 메모리 사용을 제한하기 위해 당신이 할 수있는 몇 가지가 있습니다
-(void)viewDidAppear:(BOOL)animated
{
UIScrollView * ScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 44, self.view.frame.size.width, self.view.frame.size.height-88)];// 44(UpperNavigtionBar),-88(Upper+Lower)
ScrollView.pagingEnabled = YES;
// Create a UIImage to hold Info.png
UIImage *image1 = [UIImage imageNamed:@"Image-001.jpg"];
UIImage *image2 = [UIImage imageNamed:@"Image-002.jpg"];
UIImage *image3 = [UIImage imageNamed:@"Image-003.jpg"];
UIImage *image4 = [UIImage imageNamed:@"Image-004.jpg"];
UIImage *image5 = [UIImage imageNamed:@"Image-005.jpg"];
UIImage *image6 = [UIImage imageNamed:@"Image-006.jpg"];
UIImage *image7 = [UIImage imageNamed:@"Image-007.jpg"];
UIImage *image8 = [UIImage imageNamed:@"Image-008.jpg"];
UIImage *image9 = [UIImage imageNamed:@"Image-009.jpg"];
UIImage *image10 = [UIImage imageNamed:@"Image-010.jpg"];
UIImage *image11 = [UIImage imageNamed:@"Image-011.jpg"];
UIImage *image12 = [UIImage imageNamed:@"Image-012.jpg"];
UIImage *image13 = [UIImage imageNamed:@"Image-013.jpg"];
NSArray *images = [[NSArray alloc] initWithObjects:image1,image2,image3,image4,image5,image6,image7,image8,image9,image10,image11,image12,image13,nil];
NSInteger numberOfViews = 13;
for (int i = 0; i < numberOfViews; i++)
{
CGFloat xOrigin = i * self.view.frame.size.width;
UIImageView * ImageView = [[UIImageView alloc] initWithFrame:CGRectMake(xOrigin, 0, self.view.frame.size.width, self.view.frame.size.height-88)]; // -88(Upper+Lower)
[ImageView setImage:[images objectAtIndex:i]];
[ScrollView addSubview:ImageView];
}
ScrollView.contentSize = CGSizeMake(self.view.frame.size.width*numberOfViews, self.view.frame.size.height-88); // -88(for adding Image View as subview)
[self.view addSubview:ScrollView];
}
코드에서 정확히 4 배의 메모리를 사용해야한다고 어떻게 결정 했습니까? –
@ H2CO3, 첫째, 13 개의 이미지 개체를 만듭니다. 둘째, 배열에이 객체를 추가합니다. 셋째, 이미지를 이미지보기에 추가하십시오. 넷째, 이미지보기를 스크롤보기에 추가하십시오. 그것이 제 생각 인 H2CO3입니다. 내 코드를 어떻게 바꿀 수 있습니까? –
가혹한 것처럼 들린다면 미안하지만 기본 지식을 '새롭게'해야한다고 생각합니다. 객체는 일반적으로 참조로 전달되고 값에 대한 포인터 만 전달되므로 숫자가 전혀 이해가되지 않습니다. (그 많은 언어 간다) –