AJ分享,必须精品 合并图片(图片水印)第一种方法 效果 实现: 思路: 1.分别下载2张图片:大图片.LOGO 2.合并2张图片 3.显示到一个imageView身上 // 异步下载 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // 1.下载第1张 NSURL *url1 = [NSURL URLWithString:@"http://g.hiphotos.baidu.com/…
AJ分享,必须精品 效果: 注意图里面了吗,其实那个效果做起来真的很简单,在iOS中苹果给我们封装的很好,关键是那个按钮 系统的按钮的图片是在左边的,这里我们需要把他调整到右边,然后呢需要我们自己做一下操作. 代码: 话不多说,先把所有代码放上来.能看懂就不用看别的了.(这么详细的注释,看不懂才怪..) 弹出view:NYBuyController.m // // NYBuyController.m // 彩票lottery // // Created by apple on 15-5-10.…
AJ分享,必须精品 一:首先看效果 KSImageNamed是让XCode能预览项目中图片的插件 很牛逼,据说写这个插件的牛人在日本~ 主要针对imageNamed:方法 效果如图: 安装: 首先需要到githup去下载(随便百度下下载地址一堆..) 项目地址为 https://github.com/ksuther/KSImageNamed-Xcode 下载好后是一个项目 点击如图箭头位置,然后用xcode打开 按下command+b编译一下 就ok了…
AJ分享,必须精品 效果 完成一个图片的捏合缩放,拖拽,旋转动作. 设计思路 拖拽: 首先是最简单的拖拽 //拖拽 -(void)panTest { UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc] init]; [self.iconView addGestureRecognizer:pan]; [pan addTarget:self action:@selector(panView:)]; } - (void)panVi…
AJ分享,必须精品 先看图片 第一步完成tableView和Cell的架子的图 完善图片 键盘弹出设置后图片: 自动回复图: 粗狂的架子 tableView和Cell的创建 首相tableView为了学习方便就直接用stroyBoard拖拽了,包括一些学习意义不大的图片等等都直接在stroyBoard中拖拽设置了,如果有想全部用代码写一遍的可以看我前面的文章,里面有各种各样的介绍. 其实我们知道,上半部分就是一个tableView,但是需要我们自己来编写,这里我们的数据来自plist文件,首先建…
AJ分享,必须精品 先看效果图: 学习代码 // // NYViewController.m // 05-UITextField事件_UIKit复习 // // Created by apple on 15-3-23. // Copyright (c) 2015年 znycat. All rights reserved. // #import "NYViewController.h" @interface NYViewController () <UITextFieldDeleg…
AJ分享,必须精品 效果: 代码: - (NSArray *)apps { if (!_apps) { NSArray *dictArray = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"apps.plist" ofType:nil]]; NSMutableArray *appArray = [NSMutableArray array]; for (NSDictionary *di…
AJ分享,必须精品 一:进程和线程 1:什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内. 比如同时打开QQ.Xcode,系统就会分别启动2个进程. 通过“活动监视器”可以查看Mac系统中所开启的进程. 2:什么是线程 1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程——主线程). 线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行. 比如使用酷狗播放音乐.使用迅雷下载电影,都需要在线程中执行. 3…
iOS开发多线程篇—GCD的常见用法 一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) withObject:nil afterDelay:2.0]; // 2秒后再调用self的run方法 (2)使用GCD函数 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispat…
iOS开发多线程篇—GCD的基本使用 一.主队列介绍 主队列:是和主线程相关联的队列,主队列是GCD自带的一种特殊的串行队列,放在主队列中得任务,都会放到主线程中执行. 提示:如果把任务放到主队列中进行处理,那么不论处理函数是异步的还是同步的都不会开启新的线程. 获取主队列的方式: dispatch_queue_t queue=dispatch_get_main_queue(); (1)使用异步函数执行主队列中得任务,代码示例: 1 // 2 // YYViewController.m 3 //…