iOS 在UIView 上画虚线

本文介绍了如何在iOS中创建一个自定义视图MyLineView,该视图继承自UIView并实现了在视图上绘制虚线的方法。在drawRect:方法中,设置了线的颜色、宽度和样式,并通过循环绘制多条间距不等的直线来形成虚线效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#import "MyLineView.h"

@implementation MyLineView


// UIView 上画虚线 创建文件MyLineView 继承与UIView

- (void)drawRect:(CGRect)rect

{

    // 1.获取上下文环境

    CGContextRef context = UIGraphicsGetCurrentContext();

    

    // 2.设置线的颜色和宽度

    CGContextSetStrokeColorWithColor(context,[UIColor redColor].CGColor);

    CGContextSetLineWidth(context,1.0);

    

    // 3.开始画线

    CGContextBeginPath(context);

    CGContextSetLineCap(context, kCGLineCapRound);

    const CGFloat lengths[] = {10,5};

    CGContextSetLineDash(context,0,lengths,2);

    

    int baseLineHeight = 30.0f;

    int numOfLines = (self.frame.size.height)/ baseLineHeight;

    NSLog(@"线条的数:%d",numOfLines);

    for (int i =0;i<numOfLines; i++) {

        

        CGContextMoveToPoint(context,0.0,30.0*i);

        CGContextAddLineToPoint(context, self.frame.size.width,30.0*i);

        // 线的起点(0,30)  终点(self.frame.size.width,30)

        // 线的宽度30

    }

    // 结束

    CGContextClosePath(context);

    CGContextStrokePath(context);


}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值