Swift不好理解的地方

1.String(类名) 。即 "类名",例如

private struct Storyboard {

    static let CellIdentifier = String(AnimationCollectionViewCell)

    static let NibName =    
    String(AnimationCollectionViewCell)
    static let a = String(ViewController)

}

2.images.count?? 不存在为0

return imageCollection?.images.count ?? 0

3.闭包的妙用 在 使用UICollectionView的VC里实现
backButtonTapped

class AnimationCollectionViewCell: UICollectionViewCell {

    @IBOutlet weak var backButton: UIButton!
    @IBOutlet weak var animationImageView: UIImageView!
    @IBOutlet weak var animationTextView: UITextView!

    var backButtonTapped: (() -> Void)?//闭包

    func prepareCell(viewModel: AnimationCellModel) {

animationImageView.image = UIImage(named: viewModel.imagePath)
animationTextView.scrollEnabled = false
backButton.hidden = true
addTapEventHandler()

    }

    func handleCellSelected() {

    animationTextView.scrollEnabled = false
    backButton.hidden = false
    self.superview?.bringSubviewToFront(self)
    }

    private func addTapEventHandler() {

    backButton.addTarget(self, action: #selector(AnimationCollectionViewCell.backButtonDidTouch(_:)), forControlEvents: .TouchUpInside)

    }

    func backButtonDidTouch(sender: UIGestureRecognizer) {

        backButtonTapped?()

    }

}

3.map和闭包的连用

struct AnimationImageCollection {

    private let imagePaths = ["1", "2", "3", "4", "5"]

    var images: [AnimationCellModel]

    init() {
        //$0值imagePaths的元素
        images = imagePaths.map { AnimationCellModel(imagePath: $0) }
    }
}

struct AnimationCellModel {

    let imagePath: String

    init(imagePath: String?) {

    self.imagePath = imagePath ?? ""

    }

}

推荐阅读更多精彩内容

  • 86.复合 Cases 共享相同代码块的多个switch 分支 分支可以合并, 写在分支后用逗号分开。如果任何模式...
    无沣阅读 1,016评论 1 5
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 128,818评论 18 137
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 8,682评论 4 47
  • “无所不在”,也是一种虚构。在18世纪,当人们对生活的空间还无法准确认知的阶段,洪堡们(德国著名博物学家)开始行走...
    奔跑者111阅读 101评论 0 2
  • 代码调用与属性如下 效果图 需要的可以前往下载
    我是Tam呀阅读 108评论 0 0
  • 刚才看别人博客关于截屏拼图的,自己觉得挺有意思的,于是自己动手也写了一个简单demo,一般我的视图的内容比较多,超...
    jiangamh阅读 691评论 0 1
  • 传说中,衣襟上的第二颗纽扣是属于情人的。 1.扣子锁心 纽扣是乳白色的,四个扣眼略微发黄,看起来像是存放了很久,事...
    九松子阅读 377评论 3 4
  • 方法:用英语写一些自己学英语的事,每天写了,第二天改正。 Yestoday my books arrived.It...
    classybaby阅读 93评论 0 1