2011-08-21 5 views
1

나는 대략 100 UITextFields 프로그래밍 방식으로 정교한 데이터 항목 애플 리케이션 (.... bletch 묻지 말아 요)에 대한 UIScrollView 퍼팅 오전 그리고 나는이 모든 UITextFields를 생성하는 데 너무 오래 걸리는 것을 발견 ... 뭔가 4 초.UITextField가 초기화 속도가 느립니까?

프로그래밍 방식으로 많은 사용자 인터페이스 개체를 만드는 더 빠르고 쉬운 방법이 있습니까?

예를 들어 Xib/Nib를로드하고 필요에 따라 수정하는 것이 현명합니까?

감사합니다.

답변

-2

나의 첫 번째 아이디어는 UI를 고정시키지 않도록 타이머를 작성하고 작은 단계로 1을 (또는 그 이상)로드하는 것입니다. (여전히 4 초가 걸리지 만 적어도 사용자는로드 된 상태로 입력 할 수 있습니다. 텍스트 필드)

here 방법

+0

아주 나쁜 생각 ... –

3

방금 ​​UITextField의 몇 가지를 만들고 그들이 UITableView이 세포가하는 것처럼 오프 스크린있어 한 번에 재사용에 대해 생각 해본 적이 타이머를 확인하는 것입니다?

1

데이터 항목으로 100 개의 텍스트 필드가 험합니다. 그러나 나는 클라이언트가 아주 멍청한 생각을 고집 할 때 그 문제를 안다.

주제로 돌아 가기 : 문제는 UITextFields의 실제 세대가 아닙니다. 코코아 터치가보기를 처리하는 방식입니다. 보기가 대단히 느립니다. 펜촉을 사용하는 아이디어는 사실 더 느리기 때문에 더욱 악화됩니다.

피할 수있는 유일한 방법은 단순히 많은 뷰를 그립니다 (추가)하는 것입니다. 현재 스크롤보기의 보이는 영역에있는보기를 추가하고 다른보기를 제거하면됩니다.
코코아 터치는 실제로 이미 아주 좋은 컨트롤을 가지고 있습니다. UITableView입니다. ;)

Apple은 이러한 이유로 인해 dequeue/reuse 패턴을 UITableView에서 만들었습니다.
내 제안을 사용자 정의 셀 (예 : 구분 기호 등) 및 dequeue/이러한 셀을 다시 사용하고 어딘가 배열 내부에 저장하는 UITextFields 채우기 위해 scrollview 대신 tableview 사용하는 것입니다.

관련 문제