2017-05-09 7 views
1

많은 셀이있는 일반 테이블 뷰가 있습니다. 각 셀에는 버튼이 있으며 클릭하거나 터치하면 menuBarItem이 더 낮은 위치로 이동합니다. 이것이 일부 backButton 인 것으로 의심되지만,이 줄조차도 viewDidload TableViewConroller에서 아무런 영향을받지 않습니다.UITableViewCell에서 버튼을 터치 한 후 UIBarButtonItem을 숨기는 방법

[self.navigationItem setHidesBackButton:YES]; 

내 문제는 해결이 버튼을 숨길 수 있습니다,하지만 난 공유 대화 상자를 제시 셀 내에서 줄 항목을 참조하기 위해 고군분투합니다.

감사합니다. 실패

코드 ...

UIActivityViewController *act = [[UIActivityViewController alloc] initWithActivityItems:@[@"mjk",_dest] applicationActivities:nil]; 

NSArray *excludeActivities = @[UIActivityTypeAirDrop, 
           UIActivityTypePrint, 
           UIActivityTypeAssignToContact, 
           UIActivityTypeSaveToCameraRoll, 
           UIActivityTypeAddToReadingList, 
           UIActivityTypePostToFlickr, 
           UIActivityTypePostToVimeo]; 

act.excludedActivityTypes = excludeActivities; 

[act.navigationController.navigationItem setHidesBackButton:YES];// has no effect 
[act.navigationItem setHidesBackButton:YES];// has no effect 
act.navigationController.navigationItem.leftBarButtonItem = nil; // has no effect 
act.navigationItem.leftBarButtonItem = nil; // has no effect 
를 들어

enter image description here

+0

위임자/프로토콜 패턴을 사용 해본 적이 있습니까? 'shareButtonTapped :'메소드를 정의하는 프로토콜을 생성하고 뷰 컨트롤러에이 프로토콜을 구현하게 할 수 있습니다. 그런 다음 셀을 생성/제거 할 때마다 셀에 '위임 (delegate)'을 설정하여 뷰 컨트롤러의 인스턴스가되어 셀과 뷰 컨트롤러 간의 연결이 설정됩니다. 이 문제를 해결할 수있는 다른 방법도 있습니다. – Aaron

+0

다른 문제도있을 수 있지만 직접 코드를 보지 않고 말하기는 어렵습니다. – Aaron

답변

1

목표 - C 이 탐색 모음에없는 경우

self.navigationItem.leftBarButtonItem = nil; 

를 사용할 수 있으며 사용자 정의 셀을 사용하는 . 버튼 유형을 UIButtonmyButton.hidden = YES;으로 변경하면 귀하의 사례를 해결할 수 있습니다.

+0

내 UITableViewCell에 navigationItem에 대한 참조가 없습니다. – Wayne

+0

버튼 (숨기고 싶은 버튼)을 어디에 추가합니까? 탐색 모음이나 셀에 있습니까? – Clown

+0

셀에, 각 셀에 대한 참조를 전달하는 시도하고이 작업을 않습니다 -하지만이 방법을 그렇게 잘못된 것으로 보입니다. – Wayne