iOS开发之自定义画板
2015-12-14 17:58
435 查看
今天整好有时间, 写了一个自定义的画板! [我的github]
GLPaint主要采用QuartzCore框架, 对画布上的元素进行渲染, 然后通过UIImageWriteToSavedPhotosAlbum保存到相册.
代码耦合性比较低, 集成比较简单, 初学者可以了解一下.
1. 在ViewController中只需要实现这几个方法基本就没问题了;
2. 保存到相册
GLPaint主要采用QuartzCore框架, 对画布上的元素进行渲染, 然后通过UIImageWriteToSavedPhotosAlbum保存到相册.
代码耦合性比较低, 集成比较简单, 初学者可以了解一下.
1. 在ViewController中只需要实现这几个方法基本就没问题了;
#pragma mark - 创建colorPiker - (void)setupColorPiker { _piker = [ColorPicker colorPickerWithFrame:CGRectMake(0, 64, PP_SCREEN_WIDTH, 130)]; _piker.delegate = self; [self.view addSubview:_piker]; } #pragma mark - 创建PaintView - (void)setupPaintView { _paintView = [PaintView paintView]; _paintView.backgroundColor = [UIColor colorWithWhite:0.9 alpha:.95]; // 设置线宽 _paintView.lineWidth = 8.0f; [self.view addSubview:_paintView]; // 约束 [_paintView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.equalTo(self.view).insets(UIEdgeInsetsMake(CGRectGetMaxY(_piker.frame) , 5, 0, 5)); }]; } #pragma mark - ColorPickerDelegate - (void)aColorPickerDidSelected:(UIColor *)color { [_paintView setPaintColor:color]; }
2. 保存到相册
#pragma mark - 保存图片到相册 // 监听点击 - (void)saveImage { // 获取照片 UIImage *paintImage = [_paintView paintImage]; LogRed(@"%@", paintImage); UIImageWriteToSavedPhotosAlbum(paintImage, self, @selector(imageSavedToPhotosAlbum:didFinishSavingWithError:contextInfo:), nil); } - (void)imageSavedToPhotosAlbum:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo { NSString *message = @""; if (!error) { message = @"成功保存到相册"; }else { message = [error description]; } LogRed(@"message is %@",message); }
相关文章推荐
- IOS8布局之Autolayout与Size classes(一)
- iOS-在Xcode中使用Git进行源码版本管理(四:分支)
- iOS 模态到一个有自定制Tabar的页面,tabbar消失的问题
- iOS开发总结--三方平台开发之分享
- iOS-sizeclass
- 再谈iOS 7的手势滑动返回功能
- iOS-在Xcode中使用Git进行源码版本控制(三:版本之间的比较)
- iOS开发58-iOS imageNamed和imageWithContentsOfFile区别
- 关于这些日子以来改iOS9兼容性的问题总结
- ios 监听文本框文字的变化
- iOS中的多线程
- 4.iOS多线程中,GCD技术的队列与执行方式的组合结果
- iOS恢复固件的方法
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决
- iOS-在Xcode中使用Git进行源码版本控制(二:提交更改)
- iOS-在Xcode中使用Git进行源码版本控制(一:Git源)
- iOS应用之间调用
- iOS_带下划线的Label
- iOS9适配中的各种问题
- ios Core Data