2013-12-13 2 views
0

내가 텍스트 뷰를 포함하는 세포와 jQuery과가 ... 나는 viewWithTag을 처음에이를 사용하여 설정 만 사용하고 있습니다 :UITableViewCell viewWithTag 어떤 셀이 편집되고 있는지 어떻게 알 수 있습니까?

하나를 캡처하는 방법이다 나는 혼란 스러워요 무엇
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier]; 

if (cell == nil) { 
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier]; 
} 

UITextView *tv = [cell viewWithTag:2112]; 

특정 셀이 편집 중입니다.

내 편집 처리기에서 편집중인 텍스트보기가있는 셀을 어떻게 얻습니까?

텍스트 뷰의 편집 핸들러는에서의 셀의 내용이 없습니다.

답변

1

당신은 편집

- (void)textViewDidBeginEditing:(UITextView *)textView 
{ 
    if (textView.tag == 2000)//for first cell 
    { 
     .... 
    } 
    else if (textView.tag == 2001)//for second cell 
    { 
     .... 
    } 
} 
에게 시작되는 세포 알고 얻을

UITextView *tv = [cell viewWithTag:2112]; 
[tv setDelegat:self]; 
[tv setTag:2000+indexPath.row]; 

추천하고 UITextView 위임 방법에 UITextView에 태그를 지정할 수 있습니다

1

많은 사람들이이 같은 태그를 사용하는 이유는 확실하지 않다. 사용자 정의 UITableViewCell 하위 클래스를 만들면 코드를 더 깨끗하게 처리하고이 경우 텍스트보기와 같이 액세스해야하는 UI 요소에 IBOutlets을 추가 한 다음 cellForRowAtIndexPath에 텍스트보기에 indexPath.row과 같은 태그를 지정합니다. 해당 태그의 텍스트보기를 쿼리하여 셀의 indexPath를 가져올 수 있습니다. UITableViewCell 하위 클래스를 추가하면 IBOutlets을 추가하고 후킹 할 수 있습니다. .m 파일에 아무것도 넣지 않아도됩니다.

0

서브 클래스 UITextView 다음의 CUSTOMDATA의 indexPath를 저장하는 셀을 찾기 위해 indexPath를 사용 @property (nonatomic, strong) id customData ;라는 속성을 추가 할 수 있습니다.

알터 기본적으로 customData에 셀을 저장하지만 강한 @property (nonatomic, weak) id customData ; 대신 weak을 사용할 수 있습니다.

관련 문제