首页 > 解决方案 > 为什么标签不适合tableviewcell?

问题描述

我正在使用 SnapKit 进行 autolaoyut。这是我的看法:

private func makeIconUI() {
    contentView.addSubview(iconView)
    iconView.snp.makeConstraints { (make) in
        make.leading.equalToSuperview().inset(Dimesion.sidePadding)
        make.height.width.equalTo(19)
        make.top.equalToSuperview().inset(24)
    }
}

private func makeNumberUI() {
    contentView.addSubview(numberLabel)
    numberLabel.backgroundColor = .yellow
    numberLabel.snp.makeConstraints { (make) in
        make.leading.equalTo(iconView.snp.trailing)
        make.top.equalToSuperview().inset(24)
        make.bottom.equalToSuperview()
    }
}

private func makeTitleUI() {
    contentView.addSubview(titleLabel)
    titleLabel.snp.makeConstraints { (make) in
        make.leading.equalTo(numberLabel.snp.trailing)
        make.trailing.equalTo(self.snp.trailing)
        make.top.equalToSuperview()
    }
}

问题是:黄色标签不完全适合。第二个标签在推动它,但我可以修复它。

在此处输入图像描述

标签: uitableviewuiviewautolayoutuikitsnapkit

解决方案


很困惑。黄色不完全适合两个标签的顶部不匹配?然后删除插图


    private func makeNumberUI() {
        contentView.addSubview(numberLabel)
        numberLabel.backgroundColor = .yellow
        numberLabel.snp.makeConstraints { (make) in
            make.leading.equalTo(iconView.snp.trailing)
            make.top.equalToSuperview()
            make.bottom.equalToSuperview()
        }
    }

如果逻辑是水平的,那么给它一个宽度,如:


        view.addSubview(numberLabel)
        numberLabel.backgroundColor = .yellow
        numberLabel.snp.makeConstraints { (make) in
            make.leading.equalTo(iconView.snp.trailing)
            make.width.equalTo(30)
            make.top.equalToSuperview()
            make.bottom.equalToSuperview()
        }

推荐阅读