这是我的视图控制器的样子:
UICollectionViewCell有自己的自定义类,其中包含用于图像视图的@IBOutlet。但是,每当我尝试在CollectionViewController上使用didSelectItemAt
函数时,都无法识别图像视图插座。我尝试做的是当用户从集合视图中按下图像时,它将显示在bigImageView上(在集合视图之外)。
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let cell = collectionView.cellForItem(at: indexPath)
bigImageView.image = cell.smallImageView.image
}
错误说:
"类型的值' UICollectionViewCell?'没有会员' smallImageView' "
我错过了什么?请赐教。提前谢谢!
答案 0 :(得分:0)
在你的故事板中,你是否将UICollectionViewCell设置为“自定义类”,或者故事板是否只生成一个UICollectionViewCell对象,它没有你的smallImageView?
答案 1 :(得分:0)
您需要将您的单元格转换为正确的子类以访问smallImageView
属性:
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
guard let cell = collectionView.cellForItem(at: indexPath) as? YourSubclass else {
return
}
bigImageView.image = cell.smallImageView.image
}
答案 2 :(得分:0)
在objective-c上尝试不起作用
import base64
#returned by gmail
gmail_data = {
"size": 4596,
"data": "JVBERi0xLjQKJf____8KMTMgMCBvYmoKPDwvTGVuZ3RoIDI0NzYKL1N1YnR5cGUgL1hNTAovVHlwZSAvTWV0YWRhdGEKPj4Kc3RyZWFtCjw_eHBhY2tldCBiZWdpbj0n77u_JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8-Cjx4OnhtcG1ldGEgeDp4bXB0az0iMy4xLTcwMSIgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iPgogIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI-CiAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iPgogICAgICA8eG1wOkNyZWF0ZURhdGU-MjAxNS0xMC0yN1QwNjozMTo1OFo8L3htcDpDcmVhdGVEYXRlPgogICAgICA8eG1wOkNyZWF0b3JUb29sPk5pdHJvIFBybyA5ICAoOS4gMC4gNi4gMjApPC94bXA6Q3JlYXRvclRvb2w-CiAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE1LTEwLTI3VDA2OjMxOjU5WjwveG1wOk1vZGlmeURhdGU-CiAgICAgIDx4bXA6TWV0YWRhdGFEYXRlPjIwMTUtMTAtMjdUMDY6MzE6NTlaPC94bXA6TWV0YWRhdGFEYXRlPgogICAgPC9yZGY6RGVzY3JpcHRpb24-CiAgICA8cmRmOkRlc2NyaXB0'
}
file_data = base64.urlsafe_b64decode(gmail_data['data'])
我得到白色背景图像