我如何将宽度设置为自定义 UITableViewCell
How do i set width to Custom UITableViewCell
我想将自定义 UITableViewCell 的宽度设置为屏幕宽度的 80%,但我知道单元格的大小可以使用 "layoutSubviews()" 方法进行操作,但我不知道如何操作。
请帮帮我
将 UIView
拖放到 cell
的 content view
(即单元格中)。根据您的需要调整它的高度和宽度,如您所说的 80%(因此明智地提供填充)。如果您使用自动布局,则设置 top,bottom,leading and trailing
约束。
您可以将内容视图的背景颜色设置为清晰颜色,将单元格的背景设置为清晰颜色或您想要的颜色。同样,您也可以设置 tableview 的背景颜色!
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
}
}
}
答案太简单了。只需更改 class.
中单元格的框架
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
}
}
}
一个新的可用解决方案是使用 Swift 现在为 UITableView 提供的“插入分组”样式。这会创建一个更窄的 UITableViewCells 外观,例如 this
我想将自定义 UITableViewCell 的宽度设置为屏幕宽度的 80%,但我知道单元格的大小可以使用 "layoutSubviews()" 方法进行操作,但我不知道如何操作。
请帮帮我
将 UIView
拖放到 cell
的 content view
(即单元格中)。根据您的需要调整它的高度和宽度,如您所说的 80%(因此明智地提供填充)。如果您使用自动布局,则设置 top,bottom,leading and trailing
约束。
您可以将内容视图的背景颜色设置为清晰颜色,将单元格的背景设置为清晰颜色或您想要的颜色。同样,您也可以设置 tableview 的背景颜色!
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
}
}
}
答案太简单了。只需更改 class.
中单元格的框架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
}
}
}
一个新的可用解决方案是使用 Swift 现在为 UITableView 提供的“插入分组”样式。这会创建一个更窄的 UITableViewCells 外观,例如 this