gpt4 book ai didi

ios - 创建单元格后是否有对 uitableviewcell 执行动画/移动?

转载 作者:行者123 更新时间:2023-11-30 10:23:59 25 4
gpt4 key购买 nike

这就是我想要的,我有一个带有 3 个自定义单元格的表格 View 。每个单元格执行不同的功能,单元格 2 需要来自单元格 1 的信息,单元格 3 需要来自单元格 2 的信息。因此,为了使其更直观一点,我尝试在单元格 2 中执行单元格移动(从外部屏幕移动到单击单元格 1 中的按钮时在屏幕内(即滑入)。基本上,我试图在创建按钮时将单元格从外部移动到 View 内部。

不幸的是,这会崩溃,通常这种移动在正常情况下可以工作,但在 TableView 上会崩溃。

单元格显示后是否可以使用 CGAffine 进行移动?

这是我正在使用的功能,是为了方便使用而制作的。

func movementAnimation(duration:Double,X:CGFloat,Y:CGFloat,item:UIView)
{
UIView.animate(withDuration: duration) {
item.transform = CGAffineTransform(translationX: X, y: Y)

}
}

按下按钮时将 View 移动到显示区域的功能。这是在单元类内的按钮操作内完成的。


@IBAction func buttonAction(_ sender: Any) {

movementAnimation(duration: 0.5, X: 0, Y: 0, item: viewDate)


}

这基本上是一种滑入情况。

有没有办法解决这个问题,使这个 Action 不会崩溃?

最佳答案

因此,在深入研究之后,我找到了一种绕过此问题的方法。

我做了一个简单的通知来检查按钮何时被按下。关于细胞类别,

    @IBAction func ActionPaymentOne(_ sender: Any) {

NotificationCenter.default.post(name:
Notification.Name("moveAnimation"), object: nil)

}

现在在 tableViewController 类上,我在 viewDidLoad() 上添加了这个

 NotificationCenter.default.addObserver(self, selector: 
#selector(self.moveAnimation(notification:)), name:
Notification.Name("moveAnimation"), object: nil)

现在我添加了这个功能

@objc func moveAnimation(notification: Notification)
{
let index = IndexPath(row: 1, section: 0)
let currentCell = Table.cellForRow(at: index)! as! PaymentsTableViewCell
movementAnimation(duration: 0.5, X: 0, Y: 0, item: currentCell.viewDate)
}

因为我知道哪个单元格,所以我简单地创建了一个静态索引值。如果有人想对任何随机单元格执行此操作,您可以通过从标签或按钮按下委托(delegate)获取单元格路径来完成此操作。

关于ios - 创建单元格后是否有对 uitableviewcell 执行动画/移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60182671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com