首页 > 解决方案 > 从呈现的视图中更改 UITableViewCell 的属性

问题描述

UITableViewCell单击按钮时,我会

EditPostViewController.type = "post"
let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let nextViewController = storyBoard.instantiateViewController(withIdentifier: "editPost") as! EditPostViewController
top?.present(nextViewController, animated: true, completion: nil)

去 EditPostViewController。现在在这个 EditPostViewController 中,我有一个文本框,用户编辑并单击后退按钮。

在某些按钮单击事件之后,如何编辑该特定变量的变量UITableViewCellEditPostViewController

所以我尝试self在 UITableViewCell 中获取变量,然后在 EditPostViewController 中对其进行编辑,例如

EditPostViewController.instance = self

而在EditPostViewController

EditPostViewController.instance.label.text = "something"

这行不通。这表示 UITableViewCell 没有名为实例的属性。知道如何从 EditPostViewController 编辑 UITableViewCell 中此标签的值吗?

标签: iosswiftuitableview

解决方案


您可以查看 unwind segues 来解决您的问题(还有其他方法)。

iOS 开发人员在此处找到的页面直接跳转可以向您展示如何开始的详细说明: https ://developer.apple.com/library/archive/referencelibrary/GettingStarted/DevelopiOSAppsSwift/ImplementEditAndDeleteBehavior.html

基本上,您需要做的是在展开 segue 期间从 EditPostViewController 获取目标视图控制器并更新它的 datsource。unwind segue 是在 EditPostViewController 的“Back”按钮(或任何其他按钮)上定义的 @IBAction。


推荐阅读