【发布时间】:2017-06-24 23:22:06
【问题描述】:
我正在尝试制作具有左右边距/插图的 UITableViewCell。我过去使用以下代码使用 Objective-C 完成了此操作:
- (void)setFrame:(CGRect)frame {
frame.origin.x += 25;
frame.size.width -= 2 * 25;
[super setFrame:frame];
}
这段代码不会直接转换为 Swift,因为现在我必须覆盖公共框架变量,但是将这段代码放在该变量的设置器中没有任何效果。我如何在 Swift 中使用这个或类似的技术来显示边距?
这是我尝试过的 Swift:
private var otherFrame: CGRect = CGRectZero
override public var frame: CGRect {
get {
return otherFrame
}
set {
otherFrame = frame
otherFrame.origin.x += 25
otherFrame.size.width -= 2 * 25
}
}
【问题讨论】:
-
为什么要把它放在getter中?这是对 setter 的覆盖。
-
哎呀我的意思是二传手,我编辑了问题
-
用您尝试的 Swift 代码更新您的问题,并清楚地解释您遇到的问题。
标签: ios objective-c swift uitableview