在单独的 UICollection 类中使用未解析的标识符“UICollection”
Posted
技术标签:
【中文标题】在单独的 UICollection 类中使用未解析的标识符“UICollection”【英文标题】:Use of unresolved identifier 'UICollection' in separate UICollection Class 【发布时间】:2020-06-11 09:36:17 【问题描述】:我有这门课,我将在顶部菜单视图上工作。
代码如下:
import UIKit
class TopHomeMenuBar: UIView
let collectionView: UICollectionView =
let layout = UICollectionViewFlowLayout()
let cv = UICollectionView(frame: .zero, collectionViewLayout: layout)
return cv
()
override init(frame: CGRect)
super.init(frame: frame)
addSubview(collectionView)
backgroundColor = UIColor.systemGreen
required init?(coder: NSCoder)
fatalError("init(coder:) has not been implemented")
但是,我不断收到错误消息:
使用未解析的标识符“UICollection”
错误是在这行代码中高亮UICollectionView:
let collectionView: UICollectionView =
【问题讨论】:
【参考方案1】:确实有效
现在在 XCODE 中创建了一个简单的 SinlgerView 项目 我放的控制器(仅用于测试..通常视图有自己的文件..)
//
// ViewController.swift
//
// Created by ing.conti on 11/06/2020.
// Copyright © 2020 ing.conti. All rights reserved.
//
import UIKit
class ViewController: UIViewController
override func viewDidLoad()
super.viewDidLoad()
// Do any additional setup after loading the view.
class TopHomeMenuBar: UIView
let collectionView: UICollectionView =
let layout = UICollectionViewFlowLayout()
let cv = UICollectionView(frame: .zero, collectionViewLayout: layout)
return cv
()
override init(frame: CGRect)
super.init(frame: frame)
addSubview(collectionView)
backgroundColor = UIColor.systemGreen
required init?(coder: NSCoder)
fatalError("init(coder:) has not been implemented")
【讨论】:
【参考方案2】:试试这个方法。
private var collectionLayout = UICollectionViewFlowLayout()
lazy var collectionView: UICollectionView =
UICollectionView(frame: .zero, collectionViewLayout: collectionLayout)
()
然后在layoutSubviews
中根据需要设置流布局。
override func layoutSubviews()
super.layoutSubviews()
collectionLayout.sectionInset = UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10)
collectionLayout.minimumLineSpacing = 0
collectionLayout.itemSize = CGSize(width: (frame.width - 20) / 5, height: frame.height - 24)
collectionLayout.scrollDirection = .horizontal
【讨论】:
以上是关于在单独的 UICollection 类中使用未解析的标识符“UICollection”的主要内容,如果未能解决你的问题,请参考以下文章