У меня произошел сбой, если я хочу поделиться img из collectionView в Facebook вот так. Я использую Facebook SDK для быстрой работы через CocoaPods. Если я правильно понимаю, то это URL моего изображения NIL. Но с другой стороны, если я нажму на «myImage», img будет загружен. Хммм, что не так?
import FacebookLogin
import FacebookShare
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let cell = collectionView.cellForItem(at: indexPath)
cell?.layer.borderColor = UIColor.purple.cgColor
cell?.layer.borderWidth = 2
let imageCell = collectionView.cellForItem(at: indexPath) as! imageCellCollectionViewCell
// let imageCell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) as! imageCellCollectionViewCell
guard let myImage = imageCell.imageToShare.image else {
print("leer")
return
}
let photo = Photo(image: myImage, userGenerated: true)
let content = PhotoShareContent(photos: [photo])
do {
try ShareDialog.show(from: myController, content: content)
} catch {
print(error)
}
}
!
вvar myController : MyViewController!
означает, что вы гарантируете, чтоmyController
будет иметь значение к моменту завершения инициализации этого объекта. На самом деле он не инициализирует значение для вас - это ваше дело. Если вы этого не сделаете, это будет ноль. 02.06.2018