- 博客(58)
- 收藏
- 关注
原创 Swift Any & AnyObject
Any : class、struct、enumAnyObject: class ,因为所有的类都实现了AnyObject的协议方法,Object-C中的id = AnyObject?
2016-07-04 16:05:37
514
原创 Swift 集合类型方法 map、 flatMap、filter
map: 得到一个由闭包里面返回值组成的新序列flatMap:与map类似,但会过滤掉返回值里面为nil值filter:得到一个闭包返回值为true的值组成的新序列var arr = [1,2,3,4,5] // 用法: 返回序列里面对遍历的每一个元素操作的结果序列 // 结果:
2016-07-04 16:03:36
519
原创 Swift 必须是可选值的情况&不能是可选值的情况
可选:weak修饰的是可选值值绑定一定是可选值聚合运算一定是可选值不可选:unowned修饰的不能是可选值
2016-07-04 16:02:02
448
原创 Swift defer 函数完全退出时执行(常用于销毁数据)
func resizeImage(url: NSURL) -> UIImage?{ let dataSize: Int = 1234 // 分配内存 let desData = UnsafeMutablePointerUInt8>.alloc(dataSize) // 释放内存 程序执行完 defer{ // 函数执行完毕
2016-07-04 16:01:09
989
原创 Swift 加锁
let str = "a" func operation(a:String){ objc_sync_enter(a) // 没有objc_asyn_xxxx print("做一些操作,在这个操作的过程中,a保持不被修改") objc_sync_exit(a) }// 封装Lock.swift
2016-07-04 15:59:58
1455
原创 Swift 单例
注意: 被继承的类要避免是单例,否则子类通过单例的方式获取到的对象实际是父类的对象案例: class P: NSObject{ static let instance = P() func funcA() { funcB(1) } func funcB(i:Int) -> Bool? {
2016-07-04 15:56:21
376
原创 swift import 组件
组件名有+号: UITableView+FDTemplateLayoutCellimport UITableView_FDTemplateLayoutCell
2016-07-04 15:53:31
456
原创 直播要解决的问题
采集视频源和音频源的数据对原始数据进行H264编码和AAC编码视频和音频数据封装为MPEG-TS包HLS分段生成策略及m3u8索引文件HTTP传输协议https://developer.apple.com/library/ios/technotes/tn2224/_index.html#//apple_ref/doc/uid/DTS40009745http://www.cocoachina.com
2016-07-04 15:51:05
756
原创 直播-摄像头麦克风数据打包生命周期
yup/rgb 编码成 264pcm编码成aac264+aac+.. => 封包【封装格式容器,就是音视频打包成flv,然后rtmp推送flv】 封装格式容器概念理解 : MKv,rmvb,avi, flv 只是封装格式,不同的封装格式的内部逻辑是不一样的,但是里面的内容都是压缩后的视频和压缩后的音频,简单的理解就是容器,把音视频装进去。
2016-07-04 15:46:18
538
原创 iOS 发布上传 Error ITMS-90046
解决办法:1.前往https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action 2.将Associated Moains 取消3.重新制作证书,更新Xcode里面的证书配置4.重新打包上传
2016-07-04 15:40:37
548
原创 iOS快速回复通知
#import"ViewController.h"@interfaceViewController ()@end@implementationViewController- (void)viewDidLoad { [superviewDidLoad]; // 默认处理事件只能有两个事件 act
2015-12-28 14:13:39
642
原创 iOS音频文件拼接+裁剪(音频文件拼接做了性能优化)
==============================.h文件#import @interface AudioPieceTogether : NSObject// 1.将文件A+文件B=文件A+// 2.文件B删除- (BOOL)pieceFileA:(NSString *)filePathA w
2015-12-02 13:14:46
7099
原创 iOS 崩溃日志分析
举个栗子:exception type : NSUnknownKeyException crash reason : [ setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key a. call stack info : ( 0 CoreFo
2015-11-27 18:28:03
1167
原创 React Native 篇之 自定义组件、引入组件、页面跳转
通常学习一门新的语言的时候,特别是前端开发,最怕的就是在一个页面堆积代码。 当开始学习RN(React Native的简称),各种demo练习,各种抄,各种啪啪啪,这个问题也就自然而然的暴露了出来,满满一大篇鸡肠子,自己看着都恶心!!! 感觉写那些博客或是书的人是故意的,无非就是想引出-——如何用组件的方式开发。类似于iOS里面类的封装。 各种翻书之后,小白终于找到解决
2015-11-27 11:54:52
12301
原创 广告标示符(adId) adfv标示符的那些问题
1.如何识别一个应用安装在同一个设备上呢?2.如何识别一个企业的应用安装在同一个设备上呢?苹果给我们提供了advertisingIdentifier 来解决问题1;只要是同一台设备,那么advertisingIdentifier就是一样的苹果给我们提供了identifierForVendor 来作为一个企业的app标示符比
2015-11-24 19:01:33
4569
原创 iOS 后台 播放h5 视频、音频 解决方案
1. AVAudioSession *audioSession = [AVAudioSessionsharedInstance]; BOOL ok; NSError *setCategoryError =nil; ok = [audioSession setCategory:AVAudioSessionCategoryPlayback
2015-11-14 16:22:24
5554
原创 播放本地m3u8流媒体
要播放m3u8流媒体搭建本地服务器:1. 使用CocoaHTTPServer 生产服务器,指定某文件夹为服务器根目录;2.启动指定端口的服务器;3.HTTPServer 为 单例对象的属性,否则服务器启动完就会关闭,用单例就可以将HTTPServer对象放到静态栈里面;下载m3u8文件:1.用get请求将 xxxx.m3u8文件下载到服务器根目录下的一个文件
2015-11-10 18:18:51
30575
原创 iOS 微信登录,分享等不执行代理方法 - 遇到的坑
首先吐槽一下微信的开发文档,TM的能不能写详细点,以及注意事项。方法一:- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{ return [WXApihandleOpenURL:urldelegate:self];}方法二:- (BOOL)a
2015-10-30 15:31:54
3208
1
转载 学习GCD后感——转自海森v
学习iOS到今天有3个月,也要准备面试,总是碰到gcd的问题,今天翻看了一下gcd的资料,整理一下。如果您是大牛,看到笑完之后请赐教,菜鸟一起学习。(1)GCD是什么Grand Central Dispatch(宏伟的派件中心 直译个人叫法,非官方):系统管理线程,你不需要编写线程代码。只需要定义想要执行的任务然后添加到适当的dispath queue.GCD会负责创建线程和调度你
2014-10-31 19:49:55
555
转载 Mark走起!iOS开发最常用的第三方库
Mark走起!iOS开发最常用的第三方库发表于2014-10-23 17:26| 2596次阅读| 来源CSDN| 29 条评论| 作者刘璐璐iOS移动应用开源第三方库CocoaPodsCrashlyticsAFNetworkingUrban AirshipNew RelicZBar摘要:向自己的应用中添加第三方库是一件需要谨慎而行的事,因为也许在不久的
2014-10-25 19:58:43
565
原创 动态计算行高
- (CGSize)currentSize{ CGFloat version = [[UIDevicecurrentDevice].systemVersionfloatValue]; //计算size 7之后有新的方法 CGSize size; if (version>=7.0) { //得到一个设置字体属性的
2014-10-25 19:51:26
435
原创 计算内容的文字的size
//根据换行方式和字体的大小,以及计算范围来确定字符串的size- (CGSize)currentSize{ CGFloat version = [[UIDevicecurrentDevice].systemVersionfloatValue]; //计算size 7之后有新的方法 CGSize size; if(version>=
2014-10-25 19:51:25
472
原创 设置圆角
UIButton *btn; [btn.layer setMasksToBounds:YES]; [btn.layer setCornerRadius:10.0];//设置矩形四个圆角半径 /* [btn.layer setBorderWidth:1.0];//边框宽度 */
2014-10-25 19:50:31
344
原创 将图片设置为背景颜色
self.view.backgroundColor= [UIColorcolorWithPatternImage:image];
2014-10-25 19:49:51
370
原创 将工程中的文件写入到应用程序中得Documents文件下
NSString*dbSourceFile = [[NSBundlemainBundle]pathForResource:@"symptom_sqlite3"ofType:@"db"]; NSData * data = [NSDatadataWithContentsOfFile:dbSourceFile]; NSSt
2014-10-25 19:49:25
394
原创 开发技巧,为了避免拖拽文件出现无法到达工程中,应该是件文件直接拷贝的工程中,不要在xcode里面操作
开发技巧,为了避免拖拽文件出现无法到达工程中,应该是件文件直接拷贝的工程中,不要在xcode里面操作
2014-10-25 19:48:48
608
原创 app上线Icon尺寸和Default图片尺寸
(6)设置 icon 和 default.png Spotlight – iOS5,6Setting -- iOS 5-829pt1x : 57*572x : 114*114 iphone SpotlightiOS7,840pt2x: 80*80 iphone AppiOS 5,657pt1x:57*572x:114*114
2014-10-25 19:48:21
671
原创 cell设置没有选中效果,tableVIew设置没有分割线
cell没有选中效果:在-(TableViewCell*)里面 设置一下语句cell.selectionStyle= UITableViewCellSelectionStyleNone;tableView没有分割线: _officeTableView.separatorStyle= UITableViewCellSeparatorStyleNone;
2014-10-25 19:48:09
877
原创 让Button旋转:
//M_PI == 3.14 == 180 [btn8 setTransform:CGAffineTransformMakeRotation(M_PI/7.2)];//25[btn8 setTransform:CGAffineTranformMakeRotation(M_PI/7.2)];[btn8 setTransform:CGAffineTranformMakeRo
2014-10-25 19:47:07
827
原创 navigationBar图片过大
若navigation.png图片尺寸是640*88将图片名字改为 navigation@2x.png就不会有图片覆盖状态栏的问题了
2014-10-25 19:46:14
441
原创 跑马灯
//跑马灯 NSTimer *myTimer = [NSTimer timerWithTimeInterval:0.5target:selfselector:@selector(beginCicle)userInfo:nilrepeats:YES]; [[NSRunLoop currentRunLoop]addTimer:myTimerforMo
2014-10-25 19:46:11
427
原创 根据字符串长度计算像素大小
NSDictionary *attributes = [NSDictionarydictionaryWithObjectsAndKeys:[UIFontsystemFontOfSize:13],NSFontAttributeName,nil]; float width = [[[NSAttributedStringalloc]initWithString:ci
2014-10-25 19:45:10
817
原创 让某种视图view成为键盘输入辅助工具
kKeyBoard*customKB = [[[NSBundlemainBundle]loadNibNamed:@"kKeyBoard"owner:selfoptions:nil]lastObject]; UITextField*textFiled = [[UITextFieldalloc]initWithFrame:CGRectMake(105,
2014-10-25 19:44:42
435
原创 iOS弹键盘、收键盘
//监听键盘 [[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(keyBoardShow:)name:UIKeyboardWillShowNotificationobject:nil]; [[NSNotificationCenterdefaultCenter]
2014-10-25 19:42:28
391
原创 TextField.leftView
UITextField*testField = [[UITextFieldalloc]initWithFrame:CGRectMake(20,100,180,30)]; testField.borderStyle= UITextBorderStyleRoundedRect; //开启左边视图出现模式 testField.leftV
2014-10-25 19:40:14
446
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人