2010-07-25 4 views
1

셀 내부에서 UITableView 및 UITextField에 이상한 문제가 있습니다 (하위보기로).UITextField는 스크롤하는 동안 UITableView에서 UILable로 바뀝니다.

창보기 (UITableView, 그룹화, 스크롤 가능)에는 두 개의 섹션이 있습니다.

첫 번째 섹션은 5 개 행을 가지고있다 :

1.1 - cell with UITextField 
1.2 - cell with UILabel 
1.3 - cell 
1.4 - cell with UITextField 
1.5 - cell with UISwitchButton 

를 두 번째 섹션은 1 개 행을 가지고있다 :

2.1 - cell 

시나리오 : 내가 행 1.1을 터치 키보드가 나타납니다. 나는 약간 원본을 입력 할 수있다.

문제 : 키보드에서 Done을 누르지 않고 행 2.1에 jQuery과 아래로 스크롤는 (그래서 키보드가 화면에 여전히) 내가 Done 이상한 일이 일어날와 UILabel의와 세포 1.2의 서브 뷰를 눌러보다 셀 1.1의 하위 뷰가있는 장소를 UITextField로 바꿉니다.

self.tableView.scrollEnabled = NO; 해결 방법을 시도했지만 실제로는 스크롤링을 사용하고 싶습니다.

답변

1

이것은 테이블 뷰에서 셀을 다시 사용하기 때문에 발생했을 가능성이 큽니다. jQuery과 가능한 메모리에 적은 세포를 유지하려고, 그래서 당신은 화면에 5 개 행이 때의 tableview이 같이 표시됩니다 : 당신이 다음 그래서 CELL1 아래로 스크롤이 숨겨진 경우

cell 1 
cell 2 
cell 3 
cell 4 
cell 5 

것은 당신의 tableview의 모양을 만약 실제 세포 생성의 외부 데이터를 설정해야하고 서로 다른 셀에 다른 셀 식별자를 이용해야하기 때문에이

cell 3 
cell 4 
cell 5 
cell 1 
cell 2 

것처럼있는 tableview이 할 수있다.

재사용 식별자를 nil로 설정하지 않거나 보여줄 모든 다른 셀에 대해 고유 한 재사용 식별자를 사용하지 않으면 문제가 해결됩니다.

관련 문제