Swift - 在 CollectionVIewCell 中定位 UILabel
Swift - position UILabel in CollectionVIewCell
如何在 CollectionViewCell
内的 UIImage
下方放置标签?
图片应位于最顶部,标签应位于其正下方。
// main Wishlist cell
class MainWishlistCell: UICollectionViewCell {
let wishlistImage: UIImageView = {
let v = UIImageView()
v.translatesAutoresizingMaskIntoConstraints = false
v.image = UIImage(named: "logoGroß")
v.contentMode = .scaleAspectFit
return v
}()
let wishlistLabel: UILabel = {
let v = UILabel()
v.text = "Main Wishlist"
v.font = .systemFont(ofSize: 25, weight: .medium)
v.font = UIFont(name: "Avenir Next", size: 25)
v.textColor = .white
return v
}()
override init(frame: CGRect) {
super.init(frame: frame)
commonInit()
}
required init?(coder: NSCoder) {
super.init(coder: coder)
commonInit()
}
func commonInit() -> Void {
contentView.addSubview(wishlistImage)
// constrain view to all 4 sides
NSLayoutConstraint.activate([
wishlistImage.topAnchor.constraint(equalTo: contentView.topAnchor),
wishlistImage.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
wishlistImage.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
wishlistImage.trailingAnchor.constraint(equalTo: contentView.trailingAnchor),
])
}
你需要
func commonInit() {
contentView.addSubview(wishlistImage)
contentView.addSubview(wishlistLabel)
// constrain view to all 4 sides
NSLayoutConstraint.activate([
wishlistImage.topAnchor.constraint(equalTo: contentView.topAnchor),
wishlistImage.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
wishlistImage.trailingAnchor.constraint(equalTo: contentView.trailingAnchor),
wishlistImage.heightAnchor.constraint(equalToConstant:50),
wishlistLabel.topAnchor.constraint(equalTo: wishlistImage.bottomAnchor,constant:20),
wishlistLabel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
wishlistLabel.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
wishlistLabel.trailingAnchor.constraint(equalTo: contentView.trailingAnchor),
])
}
对于wishlistLabel
不要忘记
v.translatesAutoresizingMaskIntoConstraints = false
如何在 CollectionViewCell
内的 UIImage
下方放置标签?
图片应位于最顶部,标签应位于其正下方。
// main Wishlist cell
class MainWishlistCell: UICollectionViewCell {
let wishlistImage: UIImageView = {
let v = UIImageView()
v.translatesAutoresizingMaskIntoConstraints = false
v.image = UIImage(named: "logoGroß")
v.contentMode = .scaleAspectFit
return v
}()
let wishlistLabel: UILabel = {
let v = UILabel()
v.text = "Main Wishlist"
v.font = .systemFont(ofSize: 25, weight: .medium)
v.font = UIFont(name: "Avenir Next", size: 25)
v.textColor = .white
return v
}()
override init(frame: CGRect) {
super.init(frame: frame)
commonInit()
}
required init?(coder: NSCoder) {
super.init(coder: coder)
commonInit()
}
func commonInit() -> Void {
contentView.addSubview(wishlistImage)
// constrain view to all 4 sides
NSLayoutConstraint.activate([
wishlistImage.topAnchor.constraint(equalTo: contentView.topAnchor),
wishlistImage.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
wishlistImage.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
wishlistImage.trailingAnchor.constraint(equalTo: contentView.trailingAnchor),
])
}
你需要
func commonInit() {
contentView.addSubview(wishlistImage)
contentView.addSubview(wishlistLabel)
// constrain view to all 4 sides
NSLayoutConstraint.activate([
wishlistImage.topAnchor.constraint(equalTo: contentView.topAnchor),
wishlistImage.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
wishlistImage.trailingAnchor.constraint(equalTo: contentView.trailingAnchor),
wishlistImage.heightAnchor.constraint(equalToConstant:50),
wishlistLabel.topAnchor.constraint(equalTo: wishlistImage.bottomAnchor,constant:20),
wishlistLabel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
wishlistLabel.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
wishlistLabel.trailingAnchor.constraint(equalTo: contentView.trailingAnchor),
])
}
对于wishlistLabel
不要忘记
v.translatesAutoresizingMaskIntoConstraints = false