iOS开发之Quartz2D 六 绘制UIImageView】的更多相关文章

#import <UIKit/UIKit.h> @interface XMGImageView : UIView /** <#注释#> */ @property (nonatomic, strong) UIImage *image; - (instancetype)initWithImage:(UIImage *)image; @end #import "XMGImageView.h" @implementation XMGImageView - (instan…
#import "DrawView.h" @implementation DrawView /** * 作用:专门用来绘图 * 什么时候调用:当View显示的时候调用 * @param rect:当View的bounds */ - (void)drawRect:(CGRect)rect { // Drawing code // NSLog(@"%s",__func__); // NSLog(@"%@",NSStringFromCGRect(rec…
1. 什么是Quartz2D? Quartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件 ………. 2. Quartz 2D应用示例 裁剪图片 涂鸦/画板 手势解锁 报表 屏幕截图 3. 图形上下文(Graphics Context) 因为很多计算机的概念和术语,都是从外文翻译而来.所以有些的术语比较难以理解,看其名,不知其意.…
1.         Quartz2D概述及作用 Quartz2D的API是纯C语言的,Quartz2D的API来自于Core Graphics框架. 数据类型和函数基本都以CG作为前缀,比如: CGContextRef CGPathRef CGContextStrokePath(ctx); …… Quartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统. Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\矩形\圆\弧等: 绘制文字: 绘制\生成图片(图像): 读取\生成PD…
#import "DrawView.h" @implementation DrawView -(void)awakeFromNib { // //画图片 // UIImage *image = [UIImage imageNamed:@"001"]; // //drawAtPoint绘制的是原始图片的大小 // //[image drawAtPoint:CGPointZero]; // // //把要绘制的图片给填充到给定的区域当中. // //[image dra…
#import "PieView.h" @implementation PieView - (void)drawRect:(CGRect)rect { // Drawing code NSArray *dataArray = @[@,@,@]; CGPoint center = CGPointMake(self.bounds.size.width * 0.5, self.bounds.size.height * 0.5); CGFloat radius = self.bounds.si…
iOS开发之UISearchBar初探 UISearchBar也是iOS开发常用控件之一,点进去看看里面的属性barStyle.text.placeholder等等.但是这些属性显然不足矣满足我们的开发需求.比如:修改placeholder的颜色.修改UISearchBar上面的UITextfield的背景颜色.修改UITextfield上面的照片等等. 为了实现上述的需求,最好写一个UISearchBar的子类就叫LSSearchBar吧 LSSearchBar.h如下: #import <U…
转载自:iOS开发之Xcode常用调试技巧总结 最近在面试,面试过程中问到了一些Xcode常用的调试技巧问题.平常开发过程中用的还挺顺手的,但你要突然让我说,确实一脸懵逼.Debug的技巧很多,比如最常见的方式是打个Log,在一些工程中处处可见NSLog.还有就是打断点的Debug方式等.诸如此类,下面就自己在开发过程中常用的Xcode调试技巧简单的做个总结. 一.Xcode调试技巧之:NSLog 上面也提到了,在我们日常的开发过程中最常见的Debug方式就是打Log.而在OC语言中,打Log是…
李洪强iOS开发之RunLoop的原理和核心机制 搞iOS之后一直没有深入研究过RunLoop,非常的惭愧.刚好前一阵子负责性能优化项目,需要利用RunLoop做性能优化和性能检测,趁着这个机会深入研究了RunLoop的原理和特性. RunLoop的定义 当有持续的异步任务需求时,我们会创建一个独立的生命周期可控的线程.RunLoop就是控制线程生命周期并接收事件进行处理的机制. RunLoop是iOS事件响应与任务处理最核心的机制,它贯穿iOS整个系统. Foundation: NSRunLo…
实际上在iOS很多应用开发中,大部分用的网络通信都是http/https协议,除非有特殊的需求会用到Socket网络协议进行网络数 据传输,这时候在iOS客户端就需要很好的第三方CocoaAsyncSocket来进行长连接连接和传输数据,该第三方地 址:https://github.com/robbiehanson/CocoaAsyncSocket,读者可以自行google或者baidu搜索 这个库的用法,网上有很多资料,而且用法不难. 在一些对Socket通信使用需求不是很高的应用中,比如需要…