1、畫直線app
代碼:.net
//
// YYlineview.m
// 03-畫直線
//
// Created by apple on 14-6-9.
// Copyright (c) 2014年 itcase. All rights reserved.
//get
#import "YYlineview.h"it
@implementation YYlineviewio
// 當自定義view第一次顯示出來的時候就會調用drawRect方法
- (void)drawRect:(CGRect)rect
{ast
// 1.取得和當前視圖相關聯的圖形上下文(由於圖形上下文決定繪製的輸出目標)/
// 若是是在drawRect方法中調用UIGraphicsGetCurrentContext方法獲取出來的就是Layer的上下文
CGContextRef ctx=UIGraphicsGetCurrentContext();//不須要*,同id
// 2.繪圖(繪製直線), 保存繪圖信息
// 設置起點
CGContextMoveToPoint(ctx, 20, 100);
//設置終點
CGContextAddLineToPoint(ctx, 300, 100);
//設置繪圖的狀態
//設置線條的顏色爲藍色
CGContextSetRGBStrokeColor(ctx, 0, 1.0, 0, 1.0);
//設置線條的寬度
CGContextSetLineWidth(ctx, 15);
//設置線條起點和終點的樣式爲圓角
CGContextSetLineCap(ctx, kCGLineCapRound);
//設置線條的轉角的樣式爲圓角
CGContextSetLineJoin(ctx, kCGLineJoinRound);
//3.渲染(繪製出一條空心的線)
CGContextStrokePath(ctx);
// //注意線條不能渲染爲實心的
// CGContextFillPath(ctx);
//設置第二條線
//設置第二條線的起點
CGContextMoveToPoint(ctx, 50, 200);
//設置次日線的終點(自動把上一條直線的終點當作起點)
CGContextAddLineToPoint(ctx, 300, 60);
//設置繪圖的狀態
// CGContextSetRGBStrokeColor(ctx, 1.0, 0.7, 0.3, 1.0);
//第二種設置顏色的方式
[[UIColor grayColor] set];
//設置線條的寬度
CGContextSetLineWidth(ctx, 10);
//設置線條的起點和終點的樣式
CGContextSetLineCap(ctx, kCGLineCapButt);
//渲染第二條線的圖形到view上
//繪製一條空心的線
CGContextStrokePath(ctx);
}import
@end渲染
效果:方法
2、畫三角形im
代碼:
//
// YYrectview.m
// 02-畫三角形
//
// Created by 孔醫己 on 14-6-10.
// Copyright (c) 2014年 itcast. All rights reserved.
//
#import "YYrectview.h"
@implementation YYrectview
- (void)drawRect:(CGRect)rect
{
//1.得到圖形上下文
CGContextRef ctx=UIGraphicsGetCurrentContext();
//2.繪製三角形
//設置起點
CGContextMoveToPoint(ctx, 20, 100);
//設置第二個點
CGContextAddLineToPoint(ctx, 40, 300);
//設置第三個點
CGContextAddLineToPoint(ctx, 200, 200);
//設置終點
// CGContextAddLineToPoint(ctx, 20, 100);
//關閉起點和終點
CGContextClosePath(ctx);
// 3.渲染圖形到layer上
CGContextStrokePath(ctx);
}
效果:
提示:關閉起點和終點 CGContextClosePath(ctx);