2013-06-03 3 views
0

사용자 정의 셀 (cellA)이있는 UITableView (tableA)이 있습니다. 각 셀 안에는 사용자 정의 셀 (cellB)이 포함되어 있으며 일부보기와 UITableView (tableB)이 있습니다. 각각 cellB에 버튼이 있습니다. 이 버튼에서 TouchUpInside 액션을 처리해야하지만 사용자가 버튼 외부를 탭하면 cellA을 선택하고 -(void)didSelectRowAtIndexPath테이블 A 대리인으로 호출하고 호출하는 방법이 필요합니다. 즉, cellA을 선택하고 tableBtableA에 대해이 작업을 수행하지 않아야합니다. 어떻게해야합니까? UITableViewCell의 UITableView

나는 cellB TableB의에 대한 false-userInteractionEnabled 속성을 설정하려고했으나이 경우 버튼이 비활성화되었다.

+0

** ** tableA ** 및 ** tableB **가 실제 인 경우 ** tableC **는 어디에 있습니까? 더 중요한 것은, ** tableC **가 진짜라면 그 셀의 이름은 ** cellC **가 될 것입니다. 그래서 지금 혼란스러워 ... Am ** ** real? – Groot

답변

2

tableB의 대리자에서 didSelectRowForIndexPath을 구현하여 테이블 A가 현재 행을 선택하게하십시오. 버튼이 터치되지 않은 경우에만 행에서 액션을 수신합니다.

- (void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    [tableA selectRowAtIndexPath:indexPathThatContainsTableB]; 
} 

tableA의 대리인을위한 대리자 메서드를 직접 호출해야 할 수도 있습니다.

+1

나 한테 수치! 이것은 매우 간단한 결정입니다! 고마워, 친구! – xexe

관련 문제