0

我正在尝试从UITableViewRowActionscustom中的几个之一启动一个弹出窗口UITableviewCell。似乎没有现成的委托方法可以直接执行此操作,但我的搜索发现了以下解决问题的方法:

如何从 UITableViewRowAction 获取对按钮的引用?

如何使用情节提要从自定义 uitableviewcell 正确启动弹出框转场

如何在我的应用程序中实现 UITapGestureRecognizer

从 editActionsForRowAtIndexPath 转接

IOS:验证点是否在矩形内

如何检测子视图中的点击手势

虽然其中每一个都对解决方法的某些方面有所帮助,但没有一个是全面的。但是,使用每个人的一些指导,我最终得到了这段代码:

else if ([[segue identifier] isEqualToString:@"AccountPopSegue"])
{
    UITapGestureRecognizer *tapGestureRecognizer;

    CGPoint point = [tapGestureRecognizer locationInView:_thisCustomCell.contentView];
    UIView *tappedView = [_thisCustomCell hitTest:point withEvent:nil];

    UIViewController *controller = segue.destinationViewController;
    controller.popoverPresentationController.delegate = self;
    controller.preferredContentSize = CGSizeMake(320, 186);
    UIPopoverPresentationController *thisPPC = controller.popoverPresentationController;


    thisNavController = (UINavigationController *)segue.destinationViewController;
    AccountChangeVC *acCVC = (AccountChangeVC *)thisNavController.topViewController;
    acCVC.delegate = self;

    thisPPC.sourceRect = tappedView.bounds;
    thisPPC.sourceView = tappedView.superview;
}

点击“Acct”操作会产生以下行为,显示为三个行案例:

在此处输入图像描述 在此处输入图像描述

在此处输入图像描述 在此处输入图像描述

在此处输入图像描述 在此处输入图像描述

因此,我似乎接近实现我想要的演示文稿,但还没有完全实现。

任何人都可以建议将弹出点直接放在启动UITableViewRowAction按钮上的更改吗?

4

0 回答 0