iOS-解決UITableView有footerView時最后一個cell不顯示分割線問題


重寫UITableViewCell子類的layoutSubviews方法

使用Objective-C

- (void)layoutSubviews {
    [super layoutSubviews];
    for (UIView *subview in self.contentView.superview.subviews) {
        if ([NSStringFromClass(subview.class) hasSuffix:@"SeparatorView"]) {
            subview.hidden = NO;
            CGRect frame = subview.frame;
            frame.origin.x += self.separatorInset.left;
            frame.size.width -= self.separatorInset.right;
            subview.frame =frame;
        }
    }
}

使用Swift

override func layoutSubviews() {
	super.layoutSubviews()
	for item in self.contentView.superview!.subviews {
    var subview = item as! UIView
    if NSStringFromClass(subview.classForCoder).hasSuffix("SeparatorView") {
		subview.hidden = false
            var frame = subview.frame
            frame.origin.x += self.separatorInset.left
            frame.size.width -= self.separatorInset.right
            subview.frame  = frame
        }
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM