gpt4 book ai didi

ios - 在 UITableViewCell iOS 8 (Swift) 中隐藏对象

转载 作者:行者123 更新时间:2023-11-28 05:34:41 25 4
gpt4 key购买 nike

我有一个 UITableViewCell,触摸时会展开(下拉)。然后向用户呈现一系列选项。当用户触摸其中一个选项时,我想暂时隐藏所有选项,显示事件指示器旋转,显示确认消息(成功时),然后将单元格折叠回正常状态。

我无法在自定义单元格中隐藏任何对象。以下简单代码不起作用(这是与单元格对应的正确 super View ):

var customCell: MyCustomCell = icon.superview.superview.superview as MyCustomCell
customCell.myLabel.hidden = false

我试过隐藏/显示各种不同的对象,但没有任何效果。我什至将它放入 dispatch_async 以确保它在主线程上运行。

此外,Xcode 6 beta 告诉我 myLabel.hidden 是只读的。其他对象也会发生这种情况。这不再是隐藏某些东西的正确方法了吗?

我四处搜索,但没有找到答案。如果有人可以帮助我,我将不胜感激!谢谢。

最佳答案

执行此类操作的通常方法是实现 UITableViewDelegate 方法 -tableView:didSelectRowAtIndexPath: 以在点击一行时通知您。

然后就可以轻松获取和修改cell

var customCell = self.tableView.cellForRowAtIndexPath(indexPath) as MyCustomCell
customCell.myLabel.hidden = false

我认为 icon.superview.superview.superview 行是 code smell .多个 super View 调用使您的代码变得脆弱,并且如果您更改单元格中的 View 层次结构,则可能会中断。

关于ios - 在 UITableViewCell iOS 8 (Swift) 中隐藏对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24663294/

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