2011-11-07 4 views
0

오버레이보기에서 오버레이보기로 데이터를 표시하고있는 테이블보기가 있습니다 (오버레이에 스크롤보기가 포함되어 있습니다. 레이블과 같은 30 개의 구성 요소 근처에 각 페이지에 대한 텍스트보기가 추가됩니다).for 루프에서 장치 차단을 제거하는 방법

_scrollViewOverlay = [[UIScrollView alloc] initWithFrame:CGRectMake(13, 103, 292, 273)]; 
    _scrollViewOverlay.pagingEnabled = YES; 
    _scrollViewOverlay.backgroundColor = [UIColor colorWithRed:10.0f/255.0 green:132.0f/255.0f blue:217.0f/255.0f alpha:1]; 
    _scrollViewOverlay.delegate=self; 
    [_viewOverlay addSubview:_scrollViewOverlay]; 
    [_scrollViewOverlay release]; 
    for(int iCount = 0;iCount<[_arrayDeatil count];iCount++) 
    { 
     //here i am adding 8 label and 4 textFields to _scrollViewOverlay for each page 
    } 

이제 문제는 장치의 약 10 근처 블록을 점점 secs.how 내가 이상이 문제가 저를 도와주세요 올 수 있다는 것입니다 didSelectRowAtIndexPath에서 내 코드에 대한 20 페이지 ...

+0

UIThread와는 다른 스레드에서이 기본 코드 줄을 실행하면 빠른 해결책이 될 수 있습니다. – UPT

+0

다음 코드는 대부분이 코드에 의존하므로 실제로는 그렇지 않습니다. 게다가 이것은 모든 UI 코드입니다. 대부분의 경우 백그라운드에서 UI 코드를 실행할 수 없습니다. –

답변

0

사용한다 UITableView와 비슷한 접근법. 화면에 가지고있는 것에 필요한 것만 메모리에로드해야하며 스크롤을 쉽게하기 위해 화면에서 벗어나기도합니다. UITableView에서와 마찬가지로 재사용 대기열을 구현하는 것이 좋습니다.

+0

그걸 구현하는 법을 말해 줄 수 있겠습니까? – Narayana

+0

꽤 관련되어 있습니다. 나는 그에게 총을 쥐고 특정한 질문을 가지고 돌아올 것이라고 말할 것이다. –

+0

@Narayana - 실제로 테이블 뷰를 사용할 수 있습니까? – jrturton