【问题标题】:Presenting UIActivityViewController initiating from inside UITableViewCell呈现从 UITableViewCell 内部启动的 UIActivityViewController
【发布时间】:2015-06-22 14:37:10
【问题描述】:

下面的代码工作正常,当放入PostsVC(Mian View Controller)时显示UIActivityViewController,但给出cell没有名为'presentViewController'的成员错误当放置在同一 PostsVC 视图控制器上的 UITableViewCell 内的 UIButton 的点击操作时。

如何在最后一行代码中引用 PostsVC 来呈现它?

let appAddress =  "https://itunes.apple.com/app/id978654?ls=1&mt=8"
let shareText = "Share our app "
let activityViewController : UIActivityViewController = UIActivityViewController(activityItems: [shareText, appAddress], applicationActivities: nil)
self.presentViewController(activityViewController, animated: true, completion: nil)

【问题讨论】:

    标签: ios swift uitableview uiactivityviewcontroller


    【解决方案1】:

    在单元子类中添加对视图控制器的弱引用。在 cellForRowAtIndexPath 中设置:

    cell.viewController = self
    

    然后调用 cell.viewController 上的 presentViewController 方法,而不是单元格本身。

    【讨论】:

    • 在线错误cell.viewController = self'cell' 没有名为'viewController' 的成员
    • @Kashif 是的,你必须在你的单元子类中添加一个属性
    • 对于其他人阅读,您必须在您的单元格子类中执行weak var parentViewController = UIViewController()
    猜你喜欢
    • 2021-07-29
    • 2015-08-09
    • 1970-01-01
    • 2015-09-05
    • 1970-01-01
    • 2012-05-24
    • 2018-10-21
    • 1970-01-01
    相关资源
    最近更新 更多