2017-05-09 113 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:'方法,让你的视图控制器实现这个协议。然后,每次创建/出队时,单元格都可以在单元上设置“委托”作为视图控制器的实例,从而建立单元与视图控制器之间的连接。还有其他方法可以解决这个问题。 – Aaron

+0

您也可能遇到其他问题,但很难说没有直接查看代码。 – Aaron

回答

1

对于Objective-C的 您可以使用

self.navigationItem.leftBarButtonItem = nil; 

如果不是在导航栏和你正在使用自定义单元格。更改按钮类型为UIButtonmyButton.hidden = YES;将解决您的情况

+0

我的UITableViewCell没有对navigationItem的引用。 – Wayne

+0

你在哪里添加按钮(你想隐藏的那个)?在导航栏或单元格中? – Clown

+0

在单元格中,我曾尝试将参考传递给每个单元格,并且这样做的工作是 - 但这样做似乎是错误的。 – Wayne

相关问题