两米阳光--
码龄14年
关注
提问 私信
  • 博客:25,516
    25,516
    总访问量
  • 22
    原创
  • 2,091,421
    排名
  • 12
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:安徽省
  • 加入CSDN时间: 2011-07-31
博客简介:

两米阳光的博客

查看详细资料
个人成就
  • 获得15次点赞
  • 内容获得21次评论
  • 获得6次收藏
  • 博客总排名2,091,421名
创作历程
  • 9篇
    2018年
  • 5篇
    2017年
  • 9篇
    2016年
成就勋章
TA的专栏
  • IOS-开发
    22篇
创作活动更多

王者杯·14天创作挑战营·第2期

这是一个以写作博客为目的的创作活动,旨在鼓励码龄大于4年的博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。 注: 1、参赛者可以进入活动群进行交流、分享创作心得,互相鼓励与支持(开卷),答疑及活动群请见https://bbs.csdn.net/topics/619735097 2、文章质量分查询:https://www.csdn.net/qc 我们诚挚邀请你们参加为期14天的创作挑战赛!

74人参与 去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

3-2 iOS 多线程 NSThread

NSThread如何用?- (void)nsthreadDemo { //创建方法 //1 动态创建 需要调用start启动线程 NSThread *thread1 = [[NSThread alloc] initWithTarget:self selector:@selector(threadMethod) object:nil]; thread1.name =...
原创
发布博客 2018.04.08 ·
391 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

3-1 iOS 多线程 GCD

GCD 如何用?1.串行队列同步执行 dispatch_queue_t queue = dispatch_queue_create("serialQueue", DISPATCH_QUEUE_SERIAL); dispatch_sync(queue, ^{ for (int i = 0; i < 10; i ++) { NSLog(@"%...
原创
发布博客 2018.04.04 ·
315 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2-4 iOS KVC&KVO

KVC概念:KVC,键-值编码,可以使用字符串直接访问对象的属性,而不需要显式调用存取方法。在运行时动态访问和修改属性的值,而不是在编译时确定。OC所有继承NSObject的类型都能使用KVC。怎么用?什么时候用?- (nullable id)valueForKey:(NSString *)key; //直接通过Key来取值- (void)set...
原创
发布博客 2018.03.30 ·
358 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

自动绑定框架

    如果你也曾被繁琐的列表,多控件Cell手动赋值,多控件View赋值,取值,上传服务器等所累。可以去看一下我这套自动绑定框架。    列表视图 在controller中直接new一个BaseListView,详细配置见.h,赋一个action(请求路径)以及para(请求参数) cell继承AutoBindCell,控件属性名与服务器字段key名一致,如果要实现动态cell高度,子类cell...
原创
发布博客 2018.03.30 ·
298 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

2-3 iOS 分类(Category)& 类扩展(Extension)

     分类(Category):        分类是OC中的一个特有语法,它表示一个指向分类结构体的指针。一般情况下,我们只能添加给分类增加方法,而不能增加实例变量(成员变量)。      分类的格式:@interface 待扩展的类(分类的名称)@end@implementation 待扩展的类(分类的名称)@end      分类的使用场景:        我们知道,给一个A类添...
原创
发布博客 2018.03.26 ·
493 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2-2 iOS 内存管理,栈,堆,BSS段,数据段,代码段,野指针,僵尸对象

内存管理,拆开讲就是对如何将数据存储到内存中,如何释放内存中的数据,什么时候释放。   内存中的六大区域          内存分为5个区域,分别指的是----->栈区/堆区/BSS段/数据段/代码段          栈:存储局部变量,当其作用域执行完毕之后,就会被系统立即收回          堆:存储OC对象,手动申请的字节空间,需要调用free来释放          BSS段:未初...
原创
发布博客 2018.03.21 ·
1212 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

2-1 面向对象OOP

面向对象的程序设计(OOP,Object Oriented Programming)是一种计算是一种计算机编程范式, 它将对象作为问题空间的基本元素, 利用对象和对象之间的相互作用来设计程序。     什么是面向对象?     对象的概念:即将所有事物都当对象来看待,比如我的手机,他有屏幕尺寸,重量,名字等等属性,他有打电话,发短信等等行为。当然,他的屏幕尺寸也可以当一个对象来看待。     类的...
原创
发布博客 2018.03.21 ·
239 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

1-1 版本控制 SVN&GIT

/*     1.SVN ***********************************************     SVN是集中式源代码管理工具          概念:     1)Repository   代码仓库,保存代码的仓库     2)Server   服务器,保存所有版本的代码仓库     3)Client   客户端,只保存当前用户的代码仓库     4)用户名&am...
原创
发布博客 2018.03.20 ·
275 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

写在之前

    从事iOS这个行业也有三年多了,从一开始的外包到现在做的远程会诊产品,接触过的项目类型也算不少。但是总感觉对于iOS这门技术缺少点什么,一些基础知识甚至都忘的差不多了。所以我决定,在接下来的三个月时间内。将OC主要的知识点回顾一遍。博客将以知识点的形式更新下去。算是给自己的一个学习动力。...
原创
发布博客 2018.03.20 ·
231 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

iOS音视频专栏(二)WebRTC音频模块在iOS上的应用

公司的项目是通过WebRTC的APM(Audio Processing Module)模块进行的声音处理(降噪,增益,回声消除等),通过调用audio_device获取设备音频硬件。整套音频处理都是基于WebRTC来实现的。但是这让我走了很多“路”。包括翻墙下载10个G的源码,编译源码成lib。但是却无法实现创建音频引擎(voiceEngine),创建通道(channel)等。更别提噪音抑
原创
发布博客 2017.12.08 ·
2681 阅读 ·
1 点赞 ·
11 评论 ·
0 收藏

iOS 音视频专栏(一)视频流H264分析以及坑

引言前段时间进新公司,做视频会议,会诊方向的。不采用任何第三方框架,包括推流,拉流,编解码等视频处理,都是自己来编写,除了音频部分要用到webrtc来处理声音降噪,增益等。过程很艰辛,也是踩了无数的坑,总算项目算是整完了。在此,记录一下音视频这块所需要掌握的一些知识点,很多网上能找到的,在这里我就尽量不会太费笔墨。写的不好,轻拍,大家一起进步。1.视频流 H264 分析网上有很多的对裸流H264
原创
发布博客 2017.08.01 ·
2315 阅读 ·
3 点赞 ·
0 评论 ·
2 收藏

iOS XCode8.3.2版本使用CoreData报错

之后就报错:linker command failed with exit code 1(use -v to see invocation)看到这个错误 我第一个反应就是文件.m重名了 但是工程里找了不可能存在 想到有可能XCode8.3自动生成了实体类文件,而不需要再去新建实体类了。故删除原项目中的实体类文件。编译,OK。
原创
发布博客 2017.05.29 ·
525 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

iOS 性能优化总结 (多贴总结)

避免对UIView使用透明。(UIView默认是非透明)。原因是透明对性能要求较高,如果在滚动时页面比较复杂,体验上的差异会相对明显。避免过于庞大的xib。(如果不得不使用一个ViewController作为xib,也应该将其其中的子视图拆成小的xib)。需要注意的是,当你加载一个XIB的时候所有内容都被放在了内存里,包括任何图片。如果有一个不会即刻用到的view,你这就是在浪费宝贵的
转载
发布博客 2017.05.23 ·
1200 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IOS 绘制虚线

绘制虚线/** ** lineView: 需要绘制成虚线的view ** lineLength: 虚线的宽度 ** lineSpacing: 虚线的间距 ** lineColor: 虚线的颜色 **/+ (void)drawDashLine:(UIView *)lineView lineLength:(int)lineLength lineSpacing:(int
原创
发布博客 2017.03.23 ·
520 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IOS 高德地图获取用户导航路径

标题最近项目里有一个需求,用户开始导航之后,要将导航的路径传到服务器,在另一个客户端显示所有用户的导航路径。## 思路 ## 要实现这个功能,最关键的一点就是当用户导航之后如何取到路径。笔者是用的高德地图,在这里说说我的实现。见上一篇博客,我们已经初始化了一个导航视图。导航开始之后,会有一个回调方法- (void)driveManagerOnCalculateRouteSuccess:(AM
原创
发布博客 2016.07.01 ·
1158 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IOS 高德地图导航

引言高德地图导航包还是浅显易懂,笔者在这里做点总结,实际操作一遍。 导航分为模拟导航和实时导航两种,两种导航都包括语音提示、停止导航、暂停或继续导航功能。通过模拟导航,用户可预先了解出行路线,直观掌握沿途每一个特别路口的交通状况,让出行更从容。算路成功后就可在导航视图或HUD视图下开始导航了,如下图所示: 1.配置工程 笔者是使用cocoapods自动部署导航SDK,如果更新了cocoa
原创
发布博客 2016.06.28 ·
2904 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

IOS 会动的登录界面

引言动画一直是笔者最喜欢的,在现在广大的APP市场中,很多相似的软件拼功能已经无法获得用户群体,要做到让用户喜欢,体验是重中之重。一个好的动画效果,不仅能提升逼格,还能提高用户体验。会动的登录界面先来看看效果吧 是不是感觉挺炫酷的!原型界面我们可以看到原型界面是一张颜色渐变的背景图片,上面添加几个模糊的气泡。作为一名程序员,当然十八般武艺样样精通最好。这个界面笔者是用Sketch软件制作的,类
原创
发布博客 2016.06.17 ·
1116 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IOS 二维码扫码

引言最近公司项目需要自定义一个二维码扫描界面,提前写了个小demo,可以自定义二维码样式和添加按钮,文字等,有详细的注释,代码可直接复制。代码#import "CustomScanView.h"#import <AVFoundation/AVFoundation.h>#define screenBounds [UIScreen mainScreen].bounds@interface Custo
原创
发布博客 2016.06.16 ·
957 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

IOS 开发中的一些实用公共方法

1.事件字符串转NSDate 格式:yyyy-MM-dd hh:mm:ss+ (NSDate*)DateFromString:(NSString*)uiDate{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init] ; [formatter setDateFormat:@"yyyy-MM-dd hh:mm:ss
原创
发布博客 2016.06.14 ·
1335 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

runtime实现数据模型,自动绑定数据

引言该篇博客的思路是学习了以前看过的一篇博文,时间有点久,现在已经找不到了。算是借花献佛一把,与大家分享一下如何建立数据模型,并且实现当属性名与字典key值一致时,自动给属性赋值。开始还是先来讲讲思路吧。我们的目的是给模型传入数据,当模型中属性名与字典key一致时,属性的值就为字典key对应的值。要实现这点,最关键的就是如何匹配key与属性名,并且将value赋给属性。 上篇博客中,我们讲过利用r
原创
发布博客 2016.06.14 ·
788 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多