线条图在iOS 7中不起作用

时间:2015-01-22 06:07:39

标签: ios swift ios7 ios8 uigraphicscontext

我在自定义UITableViewCell中绘制一条水平线。

enter image description here

import UIKit

class CustomCell: UITableViewCell {

    private var columns: [CGFloat] = []

    override func drawRect(rect: CGRect) {
        super.drawRect(rect)

        let context = UIGraphicsGetCurrentContext()
        CGContextSetStrokeColorWithColor(context, UIColor.darkGrayColor().CGColor)
        CGContextSetLineWidth(context, 0.60)
        for column in columns {
            // Drawing the vertical line
            CGContextMoveToPoint(context, column, 10)
            CGContextAddLineToPoint(context, column, self.bounds.size.height - 10)
        }
        CGContextStrokePath(context)
    }

    func addColumn(position: CGFloat) {
        columns.append(position)
    }
}

cellForRowAtIndexPath方法中,我指定了该行的x位置值。

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCellWithIdentifier("CustomCell", forIndexPath: indexPath) as CustomCell
        cell.addColumn(40)

        return cell
}

此解决方案在iOS 8中运行良好。但我也必须支持iOS 7。奇怪的是,当我在iOS 7中运行应用程序时,该行不会出现。

我找不到任何关于此的答案。任何人都知道为什么会这样以及如何解决它?

谢谢。

0 个答案:

没有答案