我自定义了个uitableviewcell类,里面重载了方法:(如下)。在iphone5s IOS8 下可以用,没问题;但是在iPhone 4s IOS7.1.2 却没画出框,请问这是为什么?问调试了下,有进来但是没效果。还有setNeedDisplay我也有调用,一样没效果 -(void)drawRect:(CGRect)rect 

CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetStrokeColorWithColor(context, [UIColor colorWithWhite:213.0/255 alpha:1.0].CGColor); 
CGContextSetFillColorWithColor(context, [UIColor colorWithWhite:242.0/255 alpha:1.0].CGColor); CGRect drawRect = CGRectMake(10, 5, CGRectGetWidth(rect)-20, CGRectGetHeight(rect)-10); CGContextStrokeRect(context, drawRect); 
CGContextFillRect(context, drawRect); CGContextDrawPath(context, kCGPathFillStroke); 
}

解决方案 »

  1.   


     这是在IOS8下的效果,正常的这是ios7.1下的实际图,没有化出框框
      

  2.   

    注释掉最后一句看看
    ////////CGContextDrawPath(context, kCGPathFillStroke); 
      

  3.   

    注释掉最后一句看看
    ////////CGContextDrawPath(context, kCGPathFillStroke);  不行哦...还是那样!
      

  4.   

    注释掉最后一句看看
    ////////CGContextDrawPath(context, kCGPathFillStroke);  不行哦...还是那样!drawRect 的获取改改
    CGRect drawRect = CGRectMake(10, 5, CGRectGetWidth(self.bounds)-20, CGRectGetHeight(self.bounds)-10); 
      

  5.   

    http://blog.csdn.net/a_c_e/article/details/43762111
    楼主,你好,这是我最近更新的一篇博客,里面就是介绍ios基本图形的绘制的,希望可以帮到你。你这里画不出矩形,有可能是cgrect的问题
      

  6.   

    我也遇到这个问题, IOS7 画不出来
      

  7.   

    http://stackoverflow.com/questions/3527925/subclassed-uitableviewcell-backgroundview-covers-up-anything-i-do-in-drawrect这里面有答案。如果自定义tableviewcell,如果操作的是contentView, 需要add一个view到它上面,然后再重载drawrect