- 博客(66)
- 资源 (13)
- 收藏
- 关注
原创 iOS 放音与录音同时操作设置
- (void)initAudioSession{ AVAudioSession *session = [AVAudioSession sharedInstance]; /** * 由于使用默认setCategory:error设置AVAudioSessionCategoryPlayAndRecord时,默认是听筒放声音, * 因此此处改成 A
2015-04-30 17:46:06 2219
原创 iOS 监听耳机状态
// iOS 7 的代码- (BOOL)hasHeadset{#if TARGET_IPHONE_SIMULATOR return NO;#else CFStringRef route; UInt32 size = sizeof(CFStringRef); AudioSessionGetProperty(kAudioSessionProperty_Audio
2015-04-30 17:42:01 959
原创 iOS 沙盒文档路径
/** 苹果官方要求,写入文档目录的文件只能是应用本身创建的文件 从网络上下载的文件,是不能存储在文档目录中的,应该保存在缓存路径中,caches路径*/NSString *cache = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
2015-04-29 00:44:07 273
原创 iOS 生成条纹图片
// 1.创建一行背景图片 CGFloat rowW = self.view.frame.size.width; CGFloat rowH = 30; UIGraphicsBeginImageContextWithOptions(CGSizeMake(rowW, rowH), NO, 0.0); CGContextRef ctx = UIGraphicsG
2015-04-29 00:30:20 467
原创 iOS 裁剪头像为圆形
@implementation UIImage (category)+ (instancetype)circleImageWithName:(NSString *)name borderWidth:(CGFloat)borderWidth borderColor:(UIColor *)borderColor{ // 1.加载原图 UIImage *oldImage = [UII
2015-04-29 00:26:34 395
原创 iOS 截屏
@implementation UIImage (Capture)+ (instancetype)captureWithView:(UIView *)view{ // 1.开启上下文 UIGraphicsBeginImageContextWithOptions(view.frame.size, NO, 0.0); // 2.将控制器view的layer渲染到上
2015-04-29 00:26:21 273
原创 iOS 图片添加水印
@implementation UIImage (Water)+ (instancetype)waterImageWithBg:(NSString *)bg logo:(NSString *)logo{ UIImage *bgImage = [UIImage imageNamed:bg]; // 1.创建位图上下文 UIGraphicsBeginImageCo
2015-04-29 00:14:40 349
原创 iOS UITableView系统自带下拉刷新
[self.refreshControl beginRefreshing]; [self.refreshControl endRefreshing];// 手动添加下拉刷新UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];[refreshControl addTarget:self action:@se
2015-04-28 23:54:09 1089
原创 iOS json序列化与反序列化
NSJSONReadingMutableContainers = 1, 根节点可变NSJSONReadingMutableLeaves = 2, 节点可变NSJSONReadingAllowFragments = 4, 根节点可以不是NSDictionary或者NSArray如果枚举类型的起始数值是1,通常0就表示什么选项也不支持,是效率最高的选项
2015-04-28 23:43:24 2674
原创 iOS xml解析
xml解析@property (nonatomic, strong) NSMutableArray *dataList;// 来回拼接@property (nonatomic, strong) NSMutableString *elementString;// 当前视频信息的对象@property (nonatomic, strong) Video *v;//创建并调用NSXMLP
2015-04-28 23:14:59 321
原创 iOS 模型description写法
- (NSString *)description{ return [NSString stringWithFormat:@"", [[self class] description], self, @{ @"nickName" : self.nickName,
2015-04-28 00:42:32 989
原创 UIWebView 使用
// 1. 确定要访问的资源——URLNSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];// 2. 建立网络请求// 该请求的含义是:向服务器[请求][资源URL]NSURLRequest *request = [NSURLRequest requestWithURL:url];// 3. UIWebView加载网络
2015-04-28 00:01:53 332
原创 iOS 日期操作
NSDate * newDate = [NSDate date];NSDateFormatter * f = [[NSDateFormatter alloc] init];[f setDateFormat:@"yyyy-MM-dd HH:mm:ss"];NSString * str = [f stringFromDate:newDate];//设置时差计算方法 //GTM[f set
2015-04-27 23:50:29 335
原创 iOS UISlider
UISlider* slider = [[UISlider alloc] initWithFrame:CGRectMake(20, 400, 280, 30)];//最小值slider.minimumValue = 100;//最大值slider.maximumValue = 300;//当前值slider.value = 100;//事件[slider addTarget:sel
2015-04-26 22:46:13 370
原创 iOS 锁的总结
//互斥锁NSLock *_lock;_lock = [[NSLock alloc] init];while (1){ [_lock lock]; //相关操作... [_lock unlock];}//条件锁 NSCondition *_condition;_condition = [[NSCondition alloc] ini
2015-04-26 20:44:06 334
原创 iOS 单例
/** 1. 重写allocWithZone,用dispatch_once实例化一个静态变量 2. 写一个+sharedXXX方便其他类调用 */// 在iOS中,所有对象的内存空间的分配,最终都会调用allocWithZone方法// 如果要做单例,需要重写此方法// GCD提供了一个方法,专门用来创建单例的+ (id)allocWithZone:(struct _NSZone
2015-04-26 20:41:26 287
原创 iOS App icon 圆角半径
Icon512.png- 512px - 89.825Icon.png- 57px - [email protected] 114px - 20Icon-72.png- 72px - [email protected] 144px - 25.263
2015-04-26 14:06:36 2352
原创 NSOperation 简单使用
//NSOperation 简单使用self.myQueue = [[NSOperationQueue alloc] init];- (void)demo{ NSBlockOperation *op1 = [NSBlockOperation blockOperationWithBlock:^{ NSLog(@"下载 %@", [NSThread currentTh
2015-04-24 00:22:33 238
原创 gcd 简单介绍
// 每一个应用只有一个主线程// 所有UI的更新工作,都必须在主线程上执行!dispatch_queue_t q = dispatch_get_main_queue();// 全局队列与并行队列的区别// 1. 不需创建,直接获取就能用// 2. 两个队列的执行效果相同// 3. 全局队列没有名称,调试时,无法确认准确队列// 全局队列dispatch_queue_t q =
2015-04-23 23:46:29 517
原创 iOS block 总结
^是Block的特有标记Block的实现代码包含在{}之间大多情况下,以内联inline函数的方式被定义和使用例如:void(^demoBlock)() = ^ { NSLog(@"demo Block");};int(^sumBlock)(int, int) = ^(int x, int y) { return x + y;};格式说明:(返
2015-04-23 00:07:00 385
原创 iOS 转盘效果
//转盘效果//开始- (void)startRotating{ if (self.link) return; // 1秒内刷新60次 CADisplayLink *link = [CADisplayLink displayLinkWithTarget:self selector:@selector(update)]; [link addToRun
2015-04-22 23:38:40 1474
原创 Git / SourceTree 使用
1.安装SourceTree, 下载地址:http://download.csdn.net/detail/caojengineer/8621047,由于国外的网上很难下载成功,只好传到csdn上。2.打开SourceTree,如下图,选择 “从URL克隆”3.输入服务器地址等相关信息。4.修改完之后上传。先上传到本地仓库。如果选择了 “立即推送变更到 or
2015-04-22 17:44:40 471
原创 Mac上编译 libmp3lame 并转转码
1. 下载最新lame库V3.99, http://sourceforge.net/projects/lame/files/lame/2. 下载lame-ios-build脚本,https://github.com/kewlbear/lame-ios-build3. 解压lame-3.99.5.tar.gz, 得到lame-3.99.5, 例如:/Users/Dream/Documents
2015-04-20 18:11:57 1711
原创 FireFox 浏览器安装查看json小插件
1.打开 FireFox 附加组件管理器。2.输入jsonshow 关键字搜索。3.选择安装。4.在FireFox 浏览器上输入接口,即可显示序列化的结果。
2015-04-17 14:52:41 988
原创 iOS StoryBoard 跳转
A 界面有个按钮,要跳转到 B界面。方式一:选中按钮,按住control键,再按住鼠标左键拖到B界面上,选择跳转方式。这样的话,点击按钮就会自动跳转到B界面。方式二:1.点击 A (ViewController) 界面, 按住 control 键,再按住鼠标左键拖到B界面,选择跳转方式。 2.设置segue 标识。
2015-04-17 01:58:35 350
原创 NSTimer 使用
- (void)createTimer{ //创建 定时器, _timer = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(timerHandle:) userInfo:@(100) repeats:YES];}- (void)timerHandle:(NSTimer
2015-04-17 01:18:19 303
原创 UIImageView 使用
//要播放的图片UIImage添加到一个NSArray里面 NSMutableArray* array = [NSMutableArray array]; for (int i = 1; i < 9; i++) { UIImage* image = [UIImage imageNamed:[NSString stringWithFormat:@"%02d.png",
2015-04-17 01:12:52 366
原创 NSString 计算显示范围
/** * 计算文本显示size * * @param width 宽度 * @param font 字体 * * @return 显示size */- (CGSize)calcTextDisplaySizeWithWidth:(CGFloat)width font:(UIFont *)font{ CGSize size = CGSizeZero;
2015-04-17 01:06:45 494
原创 UILabel 使用
UILabel *label = [[UILabel alloc] init]; //设置大小 label.frame = CGRectMake(10, 30, 300, 200); //设置背景颜色 label.backgroundColor = [UIColor purpleColor]; //设置默认字体大小// label.font = [UIF
2015-04-17 00:55:25 203
原创 浏览器(safari,Chrome,FireFox)进网站乱跳其他网站问题
这两天下班回家,点击进入csdn时,经常乱跳进入一些乱七八糟的网站。起初以为是safari出了问题,但使用火狐(FireFox)和Chrome也出现同样的问题。并且手机进网站也出现同样问题。因此判断是路由器被攻击了。上网查了一下,大致意思是路由器DNS被攻击了。解决方法:方法一:重置路由器。方法二:进入路由器设置界面,修改DNS服务器。我使用的是方法二。修改完之后,重启路由器,
2015-04-17 00:33:30 3754
原创 UIView转场动画接口
self.iconView.image = [UIImage imageNamed:filename];[UIView transitionWithView:self.view duration:1.0 options:UIViewAnimationOptionTransitionFlipFromTop animations:nil completion:nil];+ (void)tran
2015-04-16 10:30:40 359
原创 iOS CAAnimationGroup
- (void)btnHandle{ // 1.创建旋转动画对象 CABasicAnimation *rotate = [CABasicAnimation animation]; rotate.keyPath = @"transform.rotation"; rotate.toValue = @(M_PI); // 2.创建缩放动画对象
2015-04-15 00:48:40 319
原创 iOS CATrasition
NSString *filename = [NSString stringWithFormat:@"%d.jpg", self.index + 1]; self.iconView.image = [UIImage imageNamed:filename]; // 转场动画 CATransition *anim = [CATransition animation];
2015-04-15 00:46:03 475
原创 iOS CAKeyframeAnimation 示例
view抖动示例://角度#define Angle2Radian(angle) ((angle) / 180.0 * M_PI)- (void)start{ CAKeyframeAnimation *anim = [CAKeyframeAnimation animation]; anim.keyPath = @"transform.rotation";
2015-04-15 00:01:26 727
原创 iOS CAKeyframeAnimation
//代理方法- (void)animationDidStart:(CAAnimation *)anim;- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag;//eg. move- (void)testMove{ CAKeyframeAnimation *anim = [CAKeyframeAnima
2015-04-14 23:45:10 360
原创 iOS CABasicAnimation
//创建图层CALayer *layer = [CALayer layer];layer.position = CGPointMake(100, 100);layer.bounds = CGRectMake(0, 0, 100, 100);layer.backgroundColor = [UIColor redColor].CGColor;[self.view.layer addSubl
2015-04-14 23:21:40 285
转载 iOS音频播放 (八):NowPlayingCenter和RemoteControl
转载自:iOS音频播放 (八):NowPlayingCenter和RemoteControlNowPlayingCenterNowPlayingCenter能够显示当前正在播放的歌曲信息,它可以控制的范围包括:锁频界面上所显示的歌曲播放信息和图片iOS7之后控制中心上显示的歌曲播放信息iOS7之前双击home键后出现的进程中向左滑动出现的歌曲播放信息Appl
2015-04-14 18:47:22 1217
转载 iOS音频播放 (七):播放iPod Library中的歌曲
转载自:iOS音频播放 (七):播放iPod Library中的歌曲概述根据官方文档描述Apple从iOS 3.0开始允许开发者访问用户的iPod library来获取用户放在其中的歌曲等多媒体内容。为此Apple提供了多种方法来访问和播放iPod中的音乐,下面我们来分别列举一下这些方法。访问MediaLibrary官方文档访问iPo
2015-04-14 18:45:02 437
转载 iOS音频播放 (六):简单的音频播放器实现
转载自:iOS音频播放 (六):简单的音频播放器实现AudioFileStream vs AudioFile解释一下为什么我要同时使用AudioFileStream和AudioFile。第一,对于网络流播必须有AudioFileStream的支持,这是因为我们在第四篇中提到过AudioFile在Open时会要求使用者提供数据,如果提供的数据不足会直接跳过并且
2015-04-14 18:32:33 818
SourceTree_2.0.5.2.dmg
2015-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人