0

对于 iOS13,我的单元格类是 UICollectionViewCell,而在 iOS14 中,我希望同一个类是 UICollectionViewListCell,它仅在 iOS14 中可用于列表布局,我在 iOS14 下使用

有没有办法实现它?

注意:这是一个简单的案例,但我有很多单元格,所以每个 iOS 有 2 个不同的类不是一个选项

@available(iOS 13, *)
class MyCell: UICollectionViewCell {
    
}

@available(iOS 14, *)
class MyCell: UICollectionViewListCell {
    
}
4

1 回答 1

1

你想要做的是有条件地编译一个或另一个,所以你需要的是具有这种形式的东西:

#if os(iOS)
    #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 140000
        @available(iOS 14, *)
        class MyCell: UICollectionViewListCell { }
    #else
        @available(iOS 13, *)
        class MyCell: UICollectionViewCell { }
    #endif
#else
// Maybe cases here for macOS, tvOS, watchOS
#endif
于 2021-04-09T17:58:49.967 回答