UITableView를 사용하는 경우 [[ UITableViewCell alloc] initWithStyle: reuseIdentifier:]
및 [uiTableViewInstance dequeueReusableCellWithIdentifier:]
메서드를 사용하여 셀을 재사용 할 수 있습니다. 주어진 순간에보기에 단지 몇 개의 셀만 있기 때문에 거대한 테이블을 검사하여 메모리를 유지하는 데 도움이됩니다.uitableviewcell과 같은 맞춤 요소를 재사용/재활용하는 방법은 무엇입니까?
많은 서브뷰가있는 UIScrollView
을 만들고 싶습니다. 모든 하위 뷰를 삽입하면 피할 수있는 많은 시간과 메모리가 필요합니다. Apple API는 식별자를 사용하는 셀 뷰와 마찬가지로 맞춤 구성 요소 (UIView 또는 여기의 하위 클래스)를 재사용 할 수있는 방법을 제공합니까?
API가없는 경우 하나를 만들지 만 이에 대해서는 의심의 여지가 있습니다. 예를 들어, 모든 새 하위보기에 대해, 나는 previos보기 후에 프레임 위치를 설정합니다. 재활용하는 동안 각 하위 뷰의 프레임을 업데이트하려면 어떻게해야합니까? 재생되는 모든 하위 뷰의 내용을 삭제하고 다시로드해야합니까? 이 계산을 다른 스레드에서 수행하여 화면이 갑자기 움직이지 않도록해야합니까? 모두, 나는 모든 재사용 물건과 함께 UITableView와 같은 부드러운 스크롤 경험을 갖고 싶습니다. 여기
는 내가 지금까지 작성한 코드의 샘플입니다 :일부 통찰력 : 방법에서에 하위 뷰를 추가
int numberOfPages = 0;
int pageWidth = 100;
int pageHeight = 100
UIScrollView *myScrollView = //allocate and initialize a scrollview
//set its size to 100 by 100 (width equal to pageWidth)
//set paging enabled for myScrollView
, 그 여러 번
- (void) appendSubViewToScrollView {
UIView *view = //allocate and initialize a view and dump data in it.
CGRect rect = view.frame;
rect.size.height = pageHeight;
rect.size.width = pageWidth;
rect.origin = CGPointMake(pageHeight * numberOfPages, 0);
view.frame = rect;
[myScrollView addSubview:view];
numberOfPages++;
[scrollView setContentSize:CGSizeMake(pageHeight * numberOfPages, pageWidth)];
[view release];
}
편집라고 테이블 뷰와 그 셀이 어떻게 장면 뒤에서이를 달성하는지에 대한 정보가 유용 할 것입니다.
답장을 보내 주셔서 감사합니다. 이 코드와 관련된 코드가 있습니까? 나는 약간의 참고 문헌을 사용할 수있다. 그리고 네, 저는 등록 된 개발자입니다. 이 경우 관련 동영상을 지적 해 주시겠습니까? ("응용 프로그램 프레임 워크"? 나머지는 여가 시간에 시청할 것입니다.) 샘플 코드도 다운로드하겠습니다. 흥미롭고 유용하게 보입니다. – Sailesh
체크 표시 (위쪽/아래쪽 화살표 아래에 있음)와 함께이 답을 표시하십시오. – JoePasq
불행히도이 기술을 설명하는 비디오가 무엇인지 기억이 나지 않지만 데모로 설명 된 것을 기억합니다. "Scroll Views가 포함 된 앱 디자인"이라는 동영상이 있지만 올바른 동영상인지 여부는 확실하지 않습니다. 어쨌든보기에는 가치가 있습니다. (몇 가지 훌륭한 기술이 설명되어 있습니다.) WWDC 비디오 홈 페이지는 http://developer.apple.com/videos/wwdc/2010/에서 개발자 계정으로 로그인 한 다음 iTunes를 열고 비디오를 다운로드하거나 볼 수 있습니다. 제가 언급 한 것은 104 ("Scroll Views로 앱 설계")입니다. – viggio24