iOS偏门技术-2015
北极的Coder
做一个牛逼的懂得产品的开发工程师
展开
-
iOS音乐后台播放及锁屏信息显示
实现音乐的后台播放,以及播放时,可以控制其暂停,下一首等操作,以及锁屏图片歌曲名等的显示 此实例需要真机调试,效果图如下: 工程下载:github工程下载实现步骤: 1、首先修改info.plist 2、其次引入两个需要的框架#import #import 123、设置播放器及后台播放- (void)viewDidLoad转载 2015-08-10 15:09:59 · 802 阅读 · 0 评论 -
深入理解RunLoop
深入理解RunLoop由 ibireme | 2015-05-18 | iOS, 技术原文地址:http://blog.ibireme.com/2015/05/18/runloop/RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS转载 2016-01-08 15:02:43 · 379 阅读 · 0 评论 -
iOS中定时器和RunLoop的设定
1 + (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo;当每0.01秒进行一次repeat操作时,NSTimer是不准的,严重滞后,而改成0.1原创 2015-12-22 14:16:36 · 2618 阅读 · 0 评论 -
实现自适应高度的 UITableViewCell 或 UILabel
在使用UILabel存放字符串时,经常需要获取label的长宽数据,本文列出了部分常用的计算方法。1.获取宽度,获取字符串不折行单行显示时所需要的长度CGSize titleSize = [aString sizeWithFont:font constrainedToSize:CGSizeMake(MAXFLOAT, 30)];CGSize titleSize = [aSt原创 2015-10-26 09:45:58 · 530 阅读 · 0 评论 -
sqlite 数据库加密(SQLCipher)
一直使用sqlite来管理本地的数据,但是Xcode中的SDK中集成的sqlite是免费的,不提供加密模块,但是程序中用到的很多数据,有时候是不想让别人看到,一开始虑修改sqlite的源码,自己重新编译sqlite生成一个带加密模块的静态库,找了一下相关资料,需要修改源码中的makefile和自己实现加密算法等东西,折腾了一下,无果,就果断放弃了。此路不通,那就想别的办法来实现加密功能:现在找到3转载 2015-09-08 17:54:20 · 938 阅读 · 1 评论 -
为UIWebView实现离线浏览
为UIWebView实现离线浏览智能手机的流行让移动运营商们大赚了一笔,然而消费者们却不得不面对可怕的数据流量账单。因为在线看部电影可能要上千块通讯费,比起电影院什么的简直太坑爹了。所以为了减少流量开销,离线浏览也就成了很关键的功能,而UIWebView这个让人又爱又恨的玩意弱爆了,居然只在Mac OS X上提供webView:resource:willSendRe转载 2015-09-08 17:49:25 · 751 阅读 · 0 评论 -
Objectvie-C之 NSString 处理技巧-分割字符串
摘要 string类型是objective-c中用的最多的类型之一,有时会出现字符串中有我们不想要的字符。 如 "hello world"中的空格,或是"hello/world"中的'/',亦或是"你好A你好"中的'A'。这些都可以通过NSString中的方法来解决。iosNSString字符分割 NSCharacterSet characterSetWithCharactersInStr原创 2015-09-02 14:21:02 · 1052 阅读 · 0 评论 -
让应用停留在后台模式的三种方式
一般的应用在进入后台的时候可以获取一定时间来运行相关任务,也就是说可以在后台运行一小段时间。还有三种类型的可以运行在后台,1.音乐 2.location 3.voip大多数应用程序进入后台状态不久后转入暂停状态。在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除。应用程序提供特定的服务,用户可以请求后台执行时间,以提供这些服务。判断是否支持多线程转载 2015-07-20 09:44:16 · 3370 阅读 · 0 评论 -
IOS如何使用第三方字体
1、从网上下载所需字体的TTF文件。将字体所对应的TTF文件拖入项目中。2、然后在info.plist中添加一个新的键Fonts provided by application, NSArray类型的, 在其对应的item里面的string值为**.TTF,如图:3、接下来就是要知道对应字体的名字FontName了。一个字体文件包括以下几个内容:文件名、字体名称、字体具原创 2015-08-10 16:59:30 · 2634 阅读 · 0 评论 -
iOS开发工具——统计Crash的工具Crashlytics
作为一名应用开发者,你是否有过如下经历?为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作。它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 !如果你跟我一样是个完美主义者,你肯定想将应用做到尽善尽美。于是你打开代码准备修复闪退的问题……但是,从何处着手呢?这时iOS崩溃日志派上用场了。在大多数情况下,你能从中了解到关于闪退的详尽、有原创 2015-07-13 14:10:11 · 443 阅读 · 0 评论 -
获取当前界面的控制器
/** * 获取当前的界面 * * @return 当前的界面 */- (UIViewController *)getCurrentRootViewController { UIViewController *result; // Try to find the root view controller programmically原创 2015-08-25 12:54:14 · 539 阅读 · 0 评论 -
iOS国际化:程序名称国际化、内容国际化、storyboard国际化
摘自:http://blog.csdn.net/totogo2010/article/details/77278961、iOS程序名称国际化1.1 新建一个Single View app模版项目,命名为Localization。1.2 新建后,可以看到工作目录结构文件如下,单击InfoPlist.strings,查看右边的属性,在Localizati转载 2015-08-25 11:11:32 · 334 阅读 · 0 评论 -
改变tableview的分割线长、颜色问题 以及自定义分割线
# 改变iOS7上tableview的分割线长、颜色问题if ([ self . tableView respondsToSelector : @selector (setSeparatorInset:)]) { [ self . tableView setSeparatorInset : UIEdgeInsetsZero ];[ self . tableVi原创 2015-08-25 17:13:41 · 1924 阅读 · 0 评论 -
IOS中Info.plist文件中重要的键
Info.plist文件中重要的键键值CFBundleDisplayName(程序包显示名)显示在应用程序图标下方的名称。这个值应该本地化为所有支持的语言。原创 2015-08-10 17:43:06 · 423 阅读 · 0 评论 -
IOS中输入框被软键盘遮挡的解决办法
做IOS开发时,难免会遇到输入框被键盘遮掩的问题。上网上搜索了很多相关的解决方案,看了很多,但是由衷的觉得太麻烦了。 有的解决方案是将视图上的所有的东西都添加到一个滚动视图对象( UIScrollView )中,然后滚动视图实现输入框不被软键盘覆盖,个人觉得此方案好是好,但是太过麻烦。 有的解决方案是通过一个通知 UIKeyboardDidShowNotificatio转载 2015-08-10 17:40:11 · 443 阅读 · 0 评论 -
JSON 和 NSDictionary NSArray互转
一、将NSDictionary或NSArray转化为JSON串// 将字典或者数组转化为JSON串- (NSData *)toJSONData:(id)theData{ NSError *error = nil; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:theData原创 2016-05-12 10:37:39 · 761 阅读 · 0 评论