欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

IOS繪制虛線的方法總結(jié)

 更新時(shí)間:2016年09月06日 14:44:58   投稿:daisy  
這篇文章給大家分享了iOS中繪制虛線常見的幾種方式,大家可以根據(jù)自己的需求進(jìn)行選擇哪種方法,下面跟著小編來(lái)一起看看吧。

一、重寫drawRect方法。

- (void)drawRect:(CGRect)rect
{
 [super drawRect:rect];
CGContextRef currentContext = UIGraphicsGetCurrentContext();
//設(shè)置虛線顏色
 CGContextSetStrokeColorWithColor(currentContext, [UIColor BlackColor].CGColor);
 //設(shè)置虛線寬度
 CGContextSetLineWidth(currentContext, 1);
 //設(shè)置虛線繪制起點(diǎn)
 CGContextMoveToPoint(currentContext, 0, 0);
 //設(shè)置虛線繪制終點(diǎn)
 CGContextAddLineToPoint(currentContext, self.frame.origin.x + self.frame.size.width, 0);
 //設(shè)置虛線排列的寬度間隔:下面的arr中的數(shù)字表示先繪制3個(gè)點(diǎn)再繪制1個(gè)點(diǎn)
 CGFloat arr[] = {3,1};
 //下面最后一個(gè)參數(shù)“2”代表排列的個(gè)數(shù)。
 CGContextSetLineDash(currentContext, 0, arr, 2);
 CGContextDrawPath(currentContext, kCGPathStroke);
 
}

二、采用CAShapeLayer方式繪制虛線

CAShapeLayer *shapeLayer = [CAShapeLayer layer];
[shapeLayer setBounds:self.bounds];
[shapeLayer setPosition:CGPointMake(self.frame.size.width / 2.0, self.frame.size.height)];
[shapeLayer setFillColor:[UIColor clearColor].CGColor];
//設(shè)置虛線顏色
shapeLayer setStrokeColor:[UIColor BlackColor].CGColor];
//設(shè)置虛線寬度
[shapeLayer setLineWidth:self.frame.size.height];
[shapeLayer setLineJoin:kCALineJoinRound];
//設(shè)置虛線的線寬及間距
 [shapeLayer setLineDashPattern:[NSArray arrayWithObjects:[NSNumber numberWithInt:3], [NSNumber numberWithInt:1], nil]];
 //創(chuàng)建虛線繪制路徑
 CGMutablePathRef path = CGPathCreateMutable();
 //設(shè)置虛線繪制路徑起點(diǎn)
 CGPathMoveToPoint(path, NULL, 0, 0);
 //設(shè)置虛線繪制路徑終點(diǎn)
 CGPathAddLineToPoint(path, NULL, self.frame.size.width, 0);
 //設(shè)置虛線繪制路徑
 [shapeLayer setPath:path];
 CGPathRelease(path);
 //添加虛線
 [self.layer addSublayer:shapeLayer];

關(guān)于這種方式已經(jīng)有人整理出了一個(gè)非常好用的類方法,具體見下面這段代碼,注意:下面非完整代碼,如有需要,請(qǐng)自己百度搜索。

/**
 ** lineView:  需要繪制成虛線的view
 ** lineLength:  虛線的寬度
 ** lineSpacing: 虛線的間距
 ** lineColor:  虛線的顏色
 **/
 
+ (void)drawDashLine:(UIView *)lineView lineLength:(int)lineLength lineSpacing:(int)lineSpacing lineColor:(UIColor *)lineColor
{
 CAShapeLayer *shapeLayer = [CAShapeLayer layer];
 .....
 [shapeLayer setStrokeColor:lineColor.CGColor];
 ......
 [shapeLayer setLineDashPattern:[NSArray arrayWithObjects:[NSNumber numberWithInt:lineLength], [NSNumber numberWithInt:lineSpacing], nil]];
  ......
 [lineView.layer addSublayer:shapeLayer];
 
}

三、經(jīng)濟(jì)實(shí)惠型:采用貼圖的方式繪制虛線(需要設(shè)計(jì)師切圖配合)

UIImageView *imgDashLineView =[[UIImageView alloc] initWithFrame:CGRectMake(15, 200, self.view.frame.size.width - 30, 1)];

[imgDashLineView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"xuxian.png"]]];

[self.view addSubview:imgDashLineView];

總結(jié)

以上內(nèi)容部分來(lái)自于網(wǎng)絡(luò),本著分享的學(xué)習(xí)精神,如有涉及侵權(quán)問(wèn)題,請(qǐng)及時(shí)告知。以上就是這篇文章的全部?jī)?nèi)容,歡迎大家一起探討學(xué)習(xí),有問(wèn)題請(qǐng)留言,小編將會(huì)盡快對(duì)你的問(wèn)題進(jìn)行回復(fù)。

相關(guān)文章

  • IOS UIImagePickerController從拍照、圖庫(kù)、相冊(cè)獲取圖片

    IOS UIImagePickerController從拍照、圖庫(kù)、相冊(cè)獲取圖片

    這篇文章主要介紹了IOS UIImagePickerController從拍照、圖庫(kù)、相冊(cè)獲取圖片的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • iOS UITableView 拖動(dòng)排序?qū)崿F(xiàn)代碼

    iOS UITableView 拖動(dòng)排序?qū)崿F(xiàn)代碼

    這篇文章主要為大家詳細(xì)介紹了iOS UITableView 拖動(dòng)排序?qū)崿F(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • iOS應(yīng)用內(nèi)實(shí)現(xiàn)跳轉(zhuǎn)到手機(jī)淘寶天貓的方法

    iOS應(yīng)用內(nèi)實(shí)現(xiàn)跳轉(zhuǎn)到手機(jī)淘寶天貓的方法

    這篇文章主要給大家介紹了關(guān)于iOS應(yīng)用內(nèi)如何實(shí)現(xiàn)跳轉(zhuǎn)到手機(jī)淘寶天貓的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-12-12
  • iOS中UIAlertController設(shè)置自定義標(biāo)題與內(nèi)容的方法

    iOS中UIAlertController設(shè)置自定義標(biāo)題與內(nèi)容的方法

    UIAlertController是iOS8推出的新概念,取代了之前的 UIAlertView和UIActionSheet(雖然現(xiàn)在仍可以使用,但是會(huì)有警告)。下面這篇文章主要給大家介紹了關(guān)于iOS中UIAlertController如何設(shè)置自定義標(biāo)題與內(nèi)容的相關(guān)資料,需要的朋友可以參考下。
    2017-10-10
  • IOS開發(fā) UIAlertController詳解及實(shí)例代碼

    IOS開發(fā) UIAlertController詳解及實(shí)例代碼

    這篇文章主要介紹了 IOS開發(fā) UIAlertController詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • iOS動(dòng)畫解析之圓球加載動(dòng)畫XLBallLoading的實(shí)現(xiàn)

    iOS動(dòng)畫解析之圓球加載動(dòng)畫XLBallLoading的實(shí)現(xiàn)

    加載動(dòng)畫對(duì)大家來(lái)說(shuō)都不陌生,我們?cè)谄綍r(shí)都會(huì)遇見,開發(fā)中也必不可少,所以下面這篇文章主要給大家介紹了關(guān)于iOS動(dòng)畫解析之圓球加載動(dòng)畫XLBallLoading實(shí)現(xiàn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-11-11
  • iOS開發(fā)輸入自動(dòng)填充UITextField背景色

    iOS開發(fā)輸入自動(dòng)填充UITextField背景色

    如何在iOS中實(shí)現(xiàn)輸入時(shí)自動(dòng)填充背景色的效果,首先,我們?cè)O(shè)置UITextField的背景色為初始顏色,然后,通過(guò)設(shè)置UITextField的代理,并監(jiān)聽UITextField的輸入事件,我們?cè)谟脩糸_始輸入時(shí)將其背景色改變?yōu)楦吡令伾?在用戶結(jié)束輸入時(shí)恢復(fù)為初始顏色
    2023-10-10
  • iOS實(shí)現(xiàn)一個(gè)簡(jiǎn)易日歷代碼

    iOS實(shí)現(xiàn)一個(gè)簡(jiǎn)易日歷代碼

    本篇文章主要介紹了iOS實(shí)現(xiàn)一個(gè)簡(jiǎn)易日歷代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • iOS AFNetworking各種功能封裝類代碼

    iOS AFNetworking各種功能封裝類代碼

    下面小編就為大家分享一篇iOS AFNetworking各種功能封裝類代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • iOS遍歷集合(NSArray、NSDictionary、NSSet)的方法總結(jié)

    iOS遍歷集合(NSArray、NSDictionary、NSSet)的方法總結(jié)

    這篇文章主要介紹了iOS集合遍歷(NSArray、NSDictionary、NSSet)的方法,文中給出了詳細(xì)的方法示例,并總結(jié)了各個(gè)方法的優(yōu)缺點(diǎn)來(lái)供大家學(xué)習(xí)參考,需要的朋友們下面來(lái)一起看看吧。
    2017-03-03

最新評(píng)論