我正试图从我的CoverModel获取一个项目(item.event_date)到另一个名为PhotosModel的模型中,是否有人能指出我正确的方向或演示。我可以在viewcontroller中将所述信息输入到数组中,但出于某种原因不能用于模型。
我试过
PhotosModel.eventDate = items.event_date
但没有运气。
的CollectionView:
override func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
print(indexPath.row)
let item: CoverModel = feedItems[indexPath.row] as! CoverModel
let Storyboard = UIStoryboard(name: "Main", bundle: nil)
let DvC = Storyboard.instantiateViewController(withIdentifier: "DetailCollectionViewController") as! DetailCollectionViewController
// PhotosModel.eventDate = items.event_date (Not Working)
self.navigationController?.pushViewController(DvC, animated: true)
}
PhotosModel:
class PhotosModel: NSObject, URLSessionDataDelegate {
//properties
weak var delegate: PhotosProtocol!
var eventDate = String()
var data = Data()
let urlPath: String = "http://www.britanniaclub.co.uk/app_calls/britalbum.php?eventdate=\(eventDate)"
答案 0 :(得分:1)
您需要声明PhotosModel类的实例。然后,在该实例上设置eventDate
参数。
override func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
print(indexPath.row)
let item: CoverModel = feedItems[indexPath.row] as! CoverModel
let Storyboard = UIStoryboard(name: "Main", bundle: nil)
let DvC = Storyboard.instantiateViewController(withIdentifier: "DetailCollectionViewController") as! DetailCollectionViewController
let newPhotos = PhotosModel() // Create the instance
newPhotos.eventDate = items.event_date // Set the parameter
self.navigationController?.pushViewController(DvC, animated: true)
}
答案 1 :(得分:0)
您正在尝试直接在类上设置实例属性。
PhotosModel.eventDate = items.event_date
如果您只对日期感兴趣。像这样访问它
let eventDate = items.event_date