- 博客(57)
- 收藏
- 关注
原创 用第三方框架GDataXMLNode解析XML数据:
用第三方框架GDataXMLNode解析XML数据: (void)viewDidLoad{ // 1.确定请求路径 NSURL *url = [NSURLURLWithString:@"http://120.25.226.186:32812/video?type=XML"]; // 2.创建请求对象 NSURLReques
2015-11-29 16:08:56
483
原创 对于报 'Bad file descriptor'错误的原因
不小心犯的错误:reason: '*** -[NSConcreteFileHandle writeData:]: Bad file descriptor’原因是在创建文件句柄的时候:把方法 NSFileHandle *handle =[NSFileHandlefileHandleForWritingAtPath:filePath];写成了:N
2015-11-29 15:21:53
38277
原创 小文件下载的三种方法
小文件下载的三种方法:1. 利用NSData的方法:NSData *data = [NSData dataWithContentsOfURL:url];这里要已知文件的URL,利用上面的方法把对应的URL的唯一资源写成二进制数据,在进行相应转换.2.已知资源的URL,创建网络请求,在利用类NSURLConnection发送网络异步请求,
2015-11-29 15:19:35
637
原创 用苹果原生自带的NSURLParser解析XML数据:
今天先来无事,就整理并总结了一下关于XML数据解析,依赖方便自己查阅,二来,对于需要这方法知识给养的同仁提供参考,希望自己所做的这些能够帮到大家:用苹果原生自带的NSURLParser解析XML数据:1. 先创建一个跟NSData二进制数据相关联的NSXMLParser解析器,并设置解析器的代理为当前控制器,调用parse方法开启解析器 // 发送异步请求 [N
2015-11-29 15:14:10
761
原创 画饼图
#import "BinTu.h"@implementation BinTu- (void)drawRect:(CGRect)rect { NSArray *array = @[@25,@25,@50]; for (NSNumber *num in array) { [self dr
2015-11-27 23:26:25
537
原创 quzed2D进度条
#import "progressBar.h"@interface progressBar ()@property (nonatomic,weak) IBOutlet UISlider *progressSlider;@property (nonatomic,weak) IBOutlet UILabel *showValue;
2015-11-27 23:24:19
371
原创 CALayer的使用
#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIView *redView;@property (weak, nonatomic) IBOutlet UIImageView *myView;@end
2015-11-27 23:22:31
290
原创 核心动画-雪花
#import "drawSnowflake.h"@implementation drawSnowflake- (void)awakeFromNib{ CADisplayLink *disPLK = [CADisplayLinkdisplayLinkWithTarget:selfselector:@selector(changeValue)
2015-11-27 23:21:21
278
原创 核心动画-心跳效果
@interface ViewController ()@property (weak, nonatomic) IBOutlet UIView *redView;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad];
2015-11-27 23:19:38
595
原创 无限循环的图片轮播器
#import "ViewController.h"#define scrollW self.myScrollow.bounds.size.width#define scrollH self.myScrollow.bounds.size.height@interface ViewController ()UIScrollViewDelegate>
2015-11-27 23:18:28
400
原创 图片水印
#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutletUIImageView *myImage;@property (nonatomic,weak) UIView *blackView;@property (non
2015-11-27 23:16:16
383
原创 hitTest方法底层实现(2)
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{ // 1.先判断自己能否处理事件 // 1.1不能返回nil if((self.userInteractionEnabled =NO) && (self.hidden =YES) && (se
2015-11-27 23:13:58
468
原创 hitTest方法底层实现
// 当一个事件传递给View时就会调用// 作用是判断并找出那个view事最适合处理事件的view注意:谁最适合处理事件,就意味着调用谁的touch方法,而其他的就不会调用- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{ // 1.判断自己是否能够接受处理事件(判断标准
2015-11-27 23:12:48
792
原创 手势
- (void)viewDidLoad { [superviewDidLoad];//// 创建一个长按手势// UILongPressGestureRecognizer *longPG = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longPG)];
2015-11-27 23:10:01
354
原创 手势解锁代码实现
#import "btnsView.h"@interface btnsView ()// 存放被选中的按钮@property(nonatomic,strong) NSMutableArray *secBtns;@property(nonatomic,assign) CGPoint point;@end
2015-11-27 23:07:11
711
原创 拖动手势实现代码
- (void)awakeFromNib{ // 添加手势 UIPanGestureRecognizer *panPG = [[UIPanGestureRecognizeralloc] initWithTarget:selfaction:@selector(panPg:)]; [selfaddGesture
2015-11-27 23:05:26
444
原创 用代码实现时钟功能
// 每一秒旋转的角度#define perSec 6// 每一分钟旋转的角度#define perMin 6// 每一个小时旋转的角度#define perHour 30// 每一分钟所对应时针旋转的角度#define perMin2hourAngle 0.5#import "ViewContr
2015-11-27 23:02:17
1956
原创 抽屉效果
#import "ViewController.h"#import "redView.h"@interface ViewController ()// 控制器.m文件@property(nonatomic,weak) UIView *blueV;@property(nonatomic,weak) redView *redV;
2015-11-27 22:57:58
393
原创 tableView仿选车软件
#import "ViewController.h"#import "Dict.h"#import "Name.h"@interface ViewController ()UITableViewDataSource,UITableViewDelegate,UIAlertViewDelegate>@property(nonatomic,st
2015-11-27 22:55:28
458
原创 控制器View的显示
控制器的View的创建:1.控制器的view是延迟加载的,意思是用到的时候才加载、于是:if有没有重写loadView 如果有,就按loadView中自定义的view加载如果没有,就按系统的步骤走,即:如果有storyboard——>storyboard ——>按storyboard中描述的view加载如果没有storyboard——>Xib——>按Xib中描述的view加
2015-11-27 22:40:39
325
原创 程序启动原理
#程序启动原理总结:1.应用程序的可是范围跟启动程序有关,如果没有设置LaunchScreen,那么程序显示的可是窗口大小为4S的窗口大小2.pct文件2.1> 作用:*1.存放一些公用的宏 *2.存放一些公用的头文件 *3.自定义Log(日志输出)2.2> pct的使用步骤:*1.提前编译 prefix*2.进入工程文件 -> Build Settting -
2015-11-27 22:39:21
361
原创 窗口显示流程
窗口的显示步骤:第一:创建一个窗口,并设置application代理的window属性强引用这个窗口,让他不至于一创建出来就被销毁。第二:创建一个控制器,并让窗口的rootViewController属性强引用这个控制器第三:makeKeyAndVision显示窗口1> 设置这个窗口为主窗口,2> 让这个窗口的hidden属性值为NO第四:窗口的层级:windowsLeve
2015-11-27 22:38:10
503
原创 通过代码自定义Cell
注意:如果用静态单元格定义cell时,一定要把数据源方法删除,因为当你自定义该控制器时系统会自动给你生成返回值均为0的数据源方法,并且系统会自动调用这些数据源方法,这样会导致你设置的静态单元格数据不能显示到屏幕上。通过代码自定义cell1、新建一个继承自UITableView的类。2、先在initWithStyle:reuseldentifier:方法中添加需要显示的子控件。
2015-11-27 22:35:18
813
原创 ios工作笔记
UICollectionViewController使用时与UITableViewController注意点:1.cell必须注册2.cell内没有任何子控件可供使用,必须自己动手创建3.创建控制器前,必须制定一个布局,一般为流水布局(flow)4.cell的大小由流水布局决定5.UICollectionViewController可以横向或者竖向滚动,默认为竖向l
2015-11-27 22:33:46
467
原创 runloop的基本使用
#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutletUIImageView *imageView;@property (nonatomic,strong) NSThread *thread;@end
2015-11-27 22:24:23
308
原创 runloopObserver
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController-(void)touchesBegan:(NSSetUITouch *> *)touches withEvent:(UIEvent *)ev
2015-11-27 22:23:32
452
原创 GCD中的定时器
#import "ViewController.h"#import @interface ViewController ()/** */@property(nonatomic ,strong)dispatch_source_t timer;@end@implementation ViewController-(
2015-11-27 22:22:10
297
原创 RunLoop相关的类
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (IBAction)btnClick:(id)sender { NSLog(@"--BtnClick---");
2015-11-27 22:21:12
236
原创 获取runLoop对象
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController-(void)touchesBegan:(NSSetUITouch *> *)touches withEvent:(UIEvent *)ev
2015-11-27 22:19:55
273
原创 网络多线程-SDWebImage的基本使用
#import "ViewController.h"#import "XMGApp.h"#import "UIImageView+WebCache.h"@interface ViewController ()/** tableView的数据源*/@property(nonatomic ,strong)NSArray *apps
2015-11-27 22:18:35
2080
原创 多线程小结
多线程小结:1.进程 :一个正在运行的应用程序就是一个进程.2.线程:是系统cpu调度的基本单位,进程中的任务都是在线程中执行的.3.主线程:默认情况下,一个进程默认对应一个线程,这个线程的number值为1, 主线程的作用:刷新和显示UI界面,处理UI事件,主线程又叫UI线程 // 获取主线程 NSThread *thread = [NSThread main
2015-11-27 22:16:23
310
原创 网络多线程-GCD常用函数
#import "ViewController.h"#import "XMGPerson.h"@interface ViewController ()@end@implementation ViewController-(void)touchesBegan:(NSSetUITouch *> *)touches with
2015-11-27 22:09:52
274
原创 网络多线程-GCD线程间通信
#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutletUIImageView *imageView;@end@implementation ViewController-(v
2015-11-27 22:07:54
349
原创 网络多线程-GCD的基本使用(2)
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController-(void)touchesBegan:(NSSetUITouch *> *)touches withEvent:(UIEvent *)ev
2015-11-27 22:06:28
382
原创 网络多线程-GCD的基本使用
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController-(void)touchesBegan:(NSSetUITouch *> *)touches withEvent:(UIEvent *)ev
2015-11-27 22:04:54
347
原创 网络多线程-NSThread实现线程间通信
#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutletUIImageView *imageView;@end@implementation ViewController-(v
2015-11-27 22:03:31
339
原创 网络多线程-线程的安全
#import "ViewController.h"@interface ViewController ()/**售票员A*/@property(nonatomic ,strong)NSThread *thread01;/**售票员B*/@property(nonatomic ,strong)NSThread *thr
2015-11-27 22:01:40
288
原创 网络多线程-线程的状态
#import "ViewController.h"@interface ViewController ()@property(nonatomic ,strong)NSThread *thread;@end@implementation ViewController-(void)viewDidLoad{
2015-11-27 22:00:22
284
原创 网络多线程-NSThread的使用
#import "ViewController.h"#import "XMGThread.h"@interface ViewController ()@end@implementation ViewController-(void)touchesBegan:(NSSetUITouch *> *)touches with
2015-11-27 21:58:18
279
原创 网络多线程-pthread的使用
#import "ViewController.h"#import @interface ViewController ()@end@implementation ViewController- (IBAction)btnClick:(id)sender { //1.创建线程对
2015-11-27 21:57:39
313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人