swift2 如何设置自定义UITableViewCell宽度

jaxagkaj  于 2022-11-23  发布在  Swift
关注(0)|答案(4)|浏览(211)

我想将自定义UITableViewCell的宽度设置为屏幕宽度的80%,但我知道可以使用"layoutSubviews()"方法来操作单元格的大小,但我不知道如何操作。
请帮帮我

drkbr07n

drkbr07n1#

答案太简单了,只要在课堂上改变单元格的框架就行了。

class CustomCell: UITableViewCell {

    override var frame: CGRect {
        get {
            return super.frame
        }
        set (newFrame) {
            var frame = newFrame
            let newWidth = frame.width * 0.80 // get 80% width here
            let space = (frame.width - newWidth) / 2
            frame.size.width = newWidth
            frame.origin.x += space

            super.frame = frame

        }
    }

}
thtygnil

thtygnil2#

class CustomTVC: UITableViewCell {

    override var frame: CGRect {
        get {
            return super.frame
        }
        set (newFrame) {
            var frame = newFrame
            frame.size.width = UIScreen.mainScreen().bounds.width * 0.8
            super.frame = frame
        }
    }
}
mmvthczy

mmvthczy3#

UIView拖放到cellcontent view中(即单元格中)。根据您的需要调整它的高度和宽度,如您所说的80%(所以要像明智的那样填充)。如果您使用自动布局,请设置top,bottom,leading and trailing约束。
您可以将内容视图的背景颜色设置为透明色,也可以将单元格的背景颜色设置为透明色或您想要的颜色。同样,您也可以设置表格视图的背景颜色!

kognpnkq

kognpnkq4#

一个新的可用解决方案是使用Swift现在为UITableViews提供的“inset grouped”样式。

相关问题