如何从另一个类访问一个类中的值?斯威夫特 4

用户10497264

我有一个应用程序,当用户cellTableView代表一组图像的a 中点击 a 时,他会被带到另一个 tableView,其中应该显示该组中的所有图像。但是我不确定如何做到这一点。

我目前已经在开始时提取了进行引用和获取所有数据所需的信息,这些数据位于对象数组中。但是,如何从另一个类访问这些值?

数据模型:

struct UserImage {
    var userID: String
    var image: UIImage
    var postNum: String
}

我正在创建一个数组,如下所示,在一个P1TableVC

let arrayOfUserImageData = [UserImage]()

检索和存储数据的函数如下所示:

func fetchAllUserFristImage() {
print("Description: calling of fetchAllUserFristImage()")
Database.database().reference().child("Posts").observe(.childAdded, with: {(snapshot) in

    if snapshot.value as? [String: AnyObject] != nil {
        let user = snapshot.key
        print("Description: calling of snapshot.value is not nil ")

        self.databaseRef = Database.database().reference()

        let usersPostRef2 = self.databaseRef.child("Posts").child(user)

        usersPostRef2.observe(.value, with: {(postXSnapshots) in

            if let postDictionary2 = postXSnapshots.value as? [String:AnyObject] {

                for (p) in postDictionary2 {

                    if let posts = p.value as? [String:AnyObject] {
                        print("Description: posts has value of:  \(posts)")

                        //to get back to where i was delete the below for i
                        for (i) in posts {

                            if let imageUrlString = i.value as? [String:AnyObject], let postUrl = imageUrlString["image1"] as? String {
                                print("Description: inside the if let imageUrlString = i.value ")

                                self.feedArray.append(Post(fetchedImageURL: postUrl))
                                if let imageUrl = URL(string: postUrl), let imageDataL = try? Data(contentsOf: imageUrl), let image = UIImage(data: imageDataL) {
                                    print("Description: inside the if let imageUrl = URL(string: postUrl)")
                                    print("Description: img url's of posts: \(imageUrl)")
                                    self.tableData.append(UserImage(userID: user, image: image, postNum: p.key))
                                    self.tableView.reloadData()
                                } else {print("this user had no posts, was nil")}
                            }
                        }
                    }
                }
            }
        })
        //below shud stay same
        DispatchQueue.main.async {
            self.tableView.reloadData()
        }
    }
})
}
沙拉德·乔汉

didSelectItem方法中,从tableData基于获取所选数据indexPath.row并将此数据传递给下一个控制器(在下一个控制器中创建一个变量,并在推送/呈现之前将获取的数据分配给该变量)。

  1. didSelectItem : 获取选定的数据 - let data = tableData[indexPath.row]
  2. 将其分配给下一个控制器的变量 -

    let vc = nextVC() vc.fetchedData = data push/present vc

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在PyQt4中将变量从一个类访问到另一个类?

将 lineEdit 值设置为另一个类中的标签(Pyqt4)

PYQT 4:如何在另一个类中调用GUI函数?

如何使 S4 类从另一个 S4 类正确继承?

如何使用pyqt4和python将值从一个类发送到另一个类

在R中,如何在类定义中从另一个包引用S4类?

来自另一个类PyQt4的访问方法

角4:如何从另一个组件更新另一个组件中的数组的值

在另一个表中显示一个表的值(Codeigniter 4)

如何从子组件访问 Angular 4 中的另一个子组件

用另一个包中具有其类定义的插槽定义一个S4类

Angular 4从另一个组件访问元素

Rails 4:通过另一个访问模型

Crawler4j可以从另一个类运行吗

从另一个包扩展S4类:reconcilePropertiesAndPrototype错误

如何通过Segue Swift 4将数据从View Controller的TableViewCell类传递到另一个ViewController?

Botframework v4:将图像上传到另一个类中的机器人

从一个表中获取符合另一个表中条件的值-Rails 4

在Laravel 4中访问另一个控制器中的功能

back4app 解析,如何将用户对象 ID 应用到另一个类指针中

根据MVC 4中的另一个下拉列表选定值填充一个下拉列表

log4j2 logger 在一个类中使用时写入日志,在另一个类中使用时不写入

Install4j:将AbstractInstallAction类扩展到另一个抽象类,并实现它

如何访问在 angular4 中同一个类中声明的服务响应中的变量?

从Angular 4中的另一个组件访问组件方法

从另一个Docker容器中的pgAdmin4访问Docker容器上的PostgreSQL

如何用opencv4nodejs中的另一个值替换某个RGB值的所有像素

IdentityServer4-如何从另一个ApiResource调用一个ApiResource

显示一个div并隐藏角度4中的另一个div