Iphone 如何从uitableviewcell中的uibutton加载弹出窗口

Iphone 如何从uitableviewcell中的uibutton加载弹出窗口,iphone,ios,objective-c,uitableview,Iphone,Ios,Objective C,Uitableview,在我的应用程序中,我有一个带有表视图的视图控制器 在一个UITableviewCell的内部有一个uibutton,单击它应该会显示一个弹出视图 在我的项目中,我已经为弹出窗口导入了KGModal框架,该框架在其他视图控制器中正常工作,但是如果我尝试在此处显示弹出窗口视图,它似乎尝试在单元格中显示视图,结果很差 有人知道我该怎么解决吗 我认为问题在于我应该“遍历”层次结构,转到tableview的superviewcontroller,然后显示它,但我不知道如何执行,也不知道这是否是解决问题的正

在我的应用程序中,我有一个带有表视图的视图控制器

在一个
UITableviewCell
的内部有一个uibutton,单击它应该会显示一个弹出视图

在我的项目中,我已经为弹出窗口导入了
KGModal
框架,该框架在其他视图控制器中正常工作,但是如果我尝试在此处显示弹出窗口视图,它似乎尝试在单元格中显示视图,结果很差

有人知道我该怎么解决吗

我认为问题在于我应该“遍历”层次结构,转到tableview的superviewcontroller,然后显示它,但我不知道如何执行,也不知道这是否是解决问题的正确方法

如果你需要它,我可以张贴没有任何问题

我可以说,“应该”显示弹出视图的代码是:

[[KGModal sharedInstance] showWithContentView:_vistapopup andAnimated:YES];

非常感谢。

您遇到了一个问题,因为您必须将弹出窗口创建代码放在TableViewController而不是CellViewController的某些方法中。在按钮的“touchUpInside”回调中,您希望调用TableViewController的方法。问题实际上是:“如何从TableCellViewController子对象访问TableViewController对象?”看看您的评论,我想我们同意这一点

试着看一看


我个人最喜欢Ed Marty的答案:要么是从appDelegate访问TableViewController对象,要么是单例解决方案。祝你好运

你能发布你的错误吗?我没有任何错误,我可以发布2个截图,其中我展示了它应该做什么,以及它应该做什么!您的tableViewCell是否有单独的视图控制器?您是否使用ContentView:_vistapopupand animated:YES执行此作品[[KGModal sharedInstance]Show];tableViewCell控制器中的代码数量?如果否,那么tableViewController是从UITableView还是UIView派生的?我从未听说过KGModal,但这些问题应该有助于在endwell中找到解决方案,我创建了一个自定义uitableviewcell,具有独立的XIB,并且一切正常。在它里面,我在Interface Builder中添加了一个UIButton,所以我必须在UITableviewCell的控制器中执行这段代码。我认为如果我访问他的子类中的botton(因此在单元格的superviewcontroller中),它会工作,但我不知道如何访问superviewcontroller中的uibutton。。我希望你能理解我的意思。什么是Vistapopp?是的,你完全理解我的问题!现在我来看看这个话题,如果它解决了我的问题,我会告诉你:)我还没有找到任何解决办法。。你有没有办法教我怎么做?我真的很抱歉我的问题,但我发现有点难以理解如何解决我的问题..:(首先,尝试使用最直接的方法:在TableCellViewController按钮回调中,尝试执行以下操作:UITableView*tableView=self.superview;YourTableViewController*tableController=(YourTableViewController*)tableView.dataSource;[tableController yourTableFancyMethod];如果编译器说您在dataSource上使用了“unrecognized selector”,那么稍后我将编辑我的答案,以包含更多的细节,这有助于:-),但请注意,您不应该过多地依赖于此,可能只是为了某个测试项目。如果您计划在生产中部署您的项目,则应该考虑更健壮的解决方案(例如,通过AppDeaveTead树来实现单目标或到达您的表对象)。这只是一个弹出式视图,它显示三个按钮发出回调,这不是一个巨大的请求。总体上,我只需要在一个代码> UIButton < /代码>中,所以这是一个完美的解决方案现在…将来我会考虑单体更好的性能;谢谢:)