iOS
luco2008
给自己挖口好井
展开
-
framework--怎么样使用bundle来共享资源
转载自:http://www.jianshu.com/p/ff50bce87f551、问题?iOS的一个限制,framework只能包含头文件和静态库。那么怎么样通过使用bundle整合资源,让其可以随着framework一起发布。2、解决方法:2.1、创建一个Bundle资源都会被添加到bundle中。这将是A工程上的另一个目标。1)转载 2016-11-23 16:52:29 · 2214 阅读 · 0 评论 -
IOS学习之蓝牙4.0
转载自:http://blog.csdn.net/pony_maggie/article/details/26740237iOS学习也一段时间了,该上点干货了。前段时间研究了一下IOS蓝牙通讯相关的东西,把研究的一个成果给大家分享一下。 一 项目背景简单介绍一下做的东西,设备是一个金融刷卡器,通过蓝牙与iphone手机通讯。手机端的app通过发送不同的指令(转载 2016-07-27 11:57:19 · 625 阅读 · 0 评论 -
iOS内存暴增问题追查与使用陷阱
转载自:http://baidutech.blog.51cto.com/4114344/742967iOS平台的内存使用引用计数的机制,并且引入了半自动释放机制;这种使用上的多样性,导致开发者在内存使用上非常容易出现内存泄漏和内存莫名的增长情况; 本文会介绍iOS平台的内存使用原则与使用陷阱; 深度剖析autorelease机制;低内存报警后的处理流程;并结合自身实例介绍内存暴增的问题转载 2016-07-15 23:36:24 · 8494 阅读 · 0 评论 -
iOS 25个性能优化/内存优化常用方法
转载自:http://www.2cto.com/kf/201505/401059.html1. 用ARC管理内存ARC(Automatic ReferenceCounting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露。它自动为你管理retain和release的过程,所以你就不必去手动干预了。忘掉代码段结尾的release转载 2016-07-15 23:32:25 · 611 阅读 · 0 评论 -
iOS 真机模拟内存警告
SEL sel = NSSelectorFromString([@"_perform"stringByAppendingString:@"MemoryWarning"]); // Private API assert([[UIApplicationsharedApplication] respondsToSelector:sel]); [[UIApp原创 2016-07-15 23:07:50 · 388 阅读 · 0 评论 -
iOS开发中的几种设计模式
iOS开发学习中,经常弄不清楚ios的开发模式,今天我们就来进行简单的总结和探讨~(一)代理模式应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现。优势:解耦合敏捷原则:开放-封闭原则实例:tableview的 数据源delegate,通过和protocol的配合,完成委托诉求。列表row个数delegate自定义的delegate转载 2016-07-14 18:08:13 · 325 阅读 · 0 评论 -
iOS获取相册中所有图片
//遍历相册/** * 遍历相簿中的所有图片 * @param assetCollection 相簿 * @param original 是否要原图 */- (void)enumerateAssetsInAssetCollection:(PHAssetCollection *)assetCollection original:(B原创 2016-07-04 14:56:29 · 3226 阅读 · 0 评论 -
IOS数据库操作SQLite3使用详解
iPhone中支持通过sqlite3来访问iPhone本地的数据库。具体使用方法如下1:添加开发包libsqlite3.0.dylib首先是设置项目文件,在项目中添加iPhone版的sqlite3的数据库的开发包,在项目下的Frameworks点击右键,然后选择libsqlite3.0.dylib文件。libsqlite3.0.dylib文件地址: /Devel转载 2016-06-16 17:34:13 · 540 阅读 · 0 评论 -
ios中陀螺仪CoreMotion的用法
转自:http://code.eoe.cn/471/title/ios涓檧铻轰华CoreMotion鐨勭敤娉README.md 外部引用 原始文档以前在iphone中要得到加速度时,只能使用Accelerometer模块得到重力加速度分量,然后通过滤波得到加速度值。其实在ios中有一个陀螺仪模块,CoreMotion,使用更方便。deviceMotion.m 外部引用转载 2016-06-16 13:57:35 · 499 阅读 · 0 评论 -
iOS开发-常用第三方开源框架介绍
图像:1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。 下载:https://github.com/mwaterfall/MWPhotoBrowser 目前比较活跃的社区仍旧是Github,除此以外也有一些不错的库散落转载 2016-07-07 14:37:54 · 1855 阅读 · 0 评论 -
iOS 相关证书申请
概述由于苹果的机制,在非越狱机器上安装应用必须通过官方的Appstore,开发者开发好应用后上传Appstore,也需要通过审核等环节。AppCan不仅能实现跨平台开发,也支持上传ipa包至Appstore。本文从三个流程来介绍如何通过AppCan在线编译出ipa包并上传至苹果Appstore。一.事前准备1.1 准备苹果帐号首先您需要有一个苹果的开发者帐号转载 2016-07-19 09:41:41 · 338 阅读 · 0 评论 -
信鸽推送步骤(ios)
转载自:http://www.2cto.com/kf/201604/501544.html这两天研究了ios的推送机制,下面介绍下信鸽推送:应用配置首先进入信鸽,创建一个应用,然后在控制台点击应用列表:如下图:点击应用配置,出现应用配置界面:在开发环境下,添加个测试设备:鼠标移动到测试设备上的时候回出现修改按钮,点击按钮,出现转载 2016-07-19 16:27:18 · 1392 阅读 · 0 评论 -
iOS工程里添加C文件造成的编译错误
expected identifier or'('unknown type name‘nsstring’declaration of 'protocol'must be imported from module'objectiveC.runtime'before it is required原来在xcode6里新建的pch文件少了#ifdef __OBJC__#e转载 2016-11-23 15:33:27 · 1390 阅读 · 1 评论 -
AFNetworking3.0 GET/POST 以及上传(多)文件,下载文件
//初始化 AFHTTPSessionManager- (instancetype)init { if(self = [superinitWithBaseURL:[NSURLURLWithString:URELHEAD]]) {//请求的链接头 self.securityPolicy = [AFSecurityPolicypoli原创 2016-07-14 17:22:50 · 3206 阅读 · 0 评论 -
XCode添加自定义framework运行时出现dyld: Library not loaded的解决方法
XCode添加自定义framework运行时出现dyld: Library not loaded的解决方法在使用自定义的framework运行时,会出现如下的错误:dyld: Library not loaded: @rpath/IpuMap.framework/IpuMap Referenced from: /Users/tony/Library/Developer/CoreSimu转载 2016-11-20 23:36:51 · 5885 阅读 · 0 评论 -
iOS10上关于NSPhotoLibraryUsageDescription NSCameraUsageDescription 等问题
最近升级了Xcode8.0,真是很多坑啊,填完一个来另外一个,今天又遇到了一个,用Xcode8.0上传项目时被驳回说是info.plist里面没有设置NSPhotoLibraryUsageDescription、NSCameraUsageDescription、NSContactsUsageDescription、NSMicrophoneUsageDescription等字段,之前这些都是预设的不转载 2016-09-28 13:12:29 · 1737 阅读 · 0 评论 -
IOS 简单的动画自定义方法(旋转、移动、闪烁等)
#define kDegreesToRadian(x) (M_PI * (x) / 180.0 ) #define kRadianToDegrees(radian) (radian* 180.0 )/(M_PI) - ( void )viewDidLoad { [ super viewDidLoad ];self . title = @"转载 2016-09-22 14:06:13 · 1804 阅读 · 0 评论 -
iOS控件之UILabel
转载自:http://www.jianshu.com/p/9ffcdc0003e0首先要创建一个带有属性的字符串NSMutableAttributedStringNSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:@"这是一个富文本字符串"]; /* 其他几转载 2016-08-09 18:40:57 · 397 阅读 · 0 评论 -
UIImageView contentMode 设置效果
typedef enum { UIViewContentModeScaleToFill, UIViewContentModeScaleAspectFit, // contents scaled to fit with fixed aspect. remainder is transparent UIViewContentModeScaleAspect转载 2016-09-11 10:13:20 · 419 阅读 · 0 评论 -
iOS 延迟执行方法
iOS常用的四种延迟执行的方法:1.performSelector(NSObject)方法 2.NSTimer方法 3.GCD方法 4.sleep(NSThread)方法延迟执行代码:- (void)delayDo : (id)sender { NSLog(@"do:%@",sender);}1.performSelect转载 2016-08-19 10:51:12 · 585 阅读 · 0 评论 -
iOS UITableView默认分割线左对齐(不留间距)
1. 在初始化UITableView的时候: if([mainTableViewrespondsToSelector:@selector(setSeparatorInset:)]) { [mainTableViewsetSeparatorInset:UIEdgeInsetsZero]; } if ([mainTableVi原创 2016-08-03 17:33:39 · 1079 阅读 · 0 评论 -
【iOS】网络操作与AFNetworking
众所周知,苹果搞的一套框架NSContention发送请求与接收请求的方式十分繁琐。操作起来很不方便。不仅要做区分各种请求设置各种不同的参数,而且还要经常在多线程里操作,同时还要对请求与返回的数据做各种序列化的操作,同时还要考虑请求数据的安全等一堆问题。一、早前的几个网络框架1、ASI框架: HTTP终结者.很牛, 但是有BUG, 已经停止更新.2、MKNetw转载 2016-07-13 16:27:05 · 280 阅读 · 0 评论 -
pitch yaw roll
三维空间的右手笛卡尔坐标如图1所示pitch是围绕X轴旋转,也叫做俯仰角,如图2所示。yaw是围绕Y轴旋转,也叫偏航角,如图3所示。roll是围绕Z轴旋转,也叫翻滚角,如图4所示。图1pitch():俯仰,将物体绕X轴旋转(localRotationX)图2yaw():航原创 2016-07-01 08:41:36 · 445 阅读 · 0 评论 -
iOS4 中 Core Motion 框架的介绍和使用
转载自:http://www.cocoachina.com/ios/20100811/1996.html在iOS4之前,加速度计由UIAccelerometer类来负责采集工作,而电子罗盘则由Core Location接管。而iPhone4的推出,由于加速度计的升级(有消息说使用的是这款芯片) 和陀螺仪的引入,与motion相关的编程成为重头戏,所以,苹果在iOS4中增加一个一个专门负转载 2016-06-28 09:59:10 · 498 阅读 · 0 评论 -
iOS中assign,copy,retain之间的区别以及weak和strong的区别
@property (nonatomic, assign) NSString *title; 什么是assign,copy,retain之间的区别? assign: 简单赋值,不更改索引计数(Reference Counting)。 copy: 建立一个索引计数为1的对象,然后释放旧对象 retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1转载 2016-03-15 10:19:19 · 282 阅读 · 0 评论 -
iOS UILabel设置行间距和字间距并计算高度
#define UILABEL_LINE_SPACE 6#define HEIGHT [ [ UIScreen mainScreen ] bounds ].size.height//给UILabel设置行间距和字间距-(void)setLabelSpace:(UILabel*)label withValue:(NSString*)str withFont:(UI原创 2016-03-25 10:52:52 · 41509 阅读 · 4 评论 -
iOS 观察者模式
KVOKey-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。每次指定的被观察的对象的属性被修改后,KVO自动通知相应的观察者。情形:从ViewController1跳转到ViewController2,ViewController2又popup回到ViewController1,并且修改了ViewController1的某个值,需原创 2016-03-25 10:50:09 · 330 阅读 · 0 评论 -
iOS 获取手机或应用相关属性
//手机序列号 NSString* identifierNumber = [[UIDevice currentDevice] uniqueIdentifier]; NSLog(@"手机序列号: %@",identifierNumber); //手机别名: 用户定义的名称 NSString* userPhoneName = [[UIDevice current原创 2016-03-11 17:52:39 · 274 阅读 · 0 评论 -
贝塞尔曲线精讲
http://www.jianshu.com/p/734b34e82135转载 2016-03-11 17:43:49 · 314 阅读 · 0 评论 -
iOS 通过贝塞尔曲线绘制三角形
- (void)drawRect:(CGRect)rect { // Drawing code //定义画图的path UIBezierPath *path = [[UIBezierPathalloc] init]; //path移动到开始画图的位置 [path moveToPoint:C原创 2016-03-11 17:23:05 · 6825 阅读 · 0 评论 -
iOS 百度地图当前位置方向问题解决方案
大家都知道,如果需要百度地图当前位置能跟随手机方向而改变方向的话,使用百度地图自身的跟随模式BMKUserTrackingModeFollow就可以做到,但是有个问题,当点击当前滑动地图后,方向就不会改变了;那有没有其他方法能解决这个问题了?我的做法是:不是用百度地图自身的跟随模式,也不是用百度地图自身的当前位置,而是自己添加一个annotation:定义三个变量:原创 2016-03-11 17:00:46 · 6801 阅读 · 3 评论 -
iOS多线程之GCD
GCD之dispatch queueiOS中多线程编程工具主要有: NSThreadNSOperationGCD这三种方法都简单易用,各有千秋.但无疑GCD是最有诱惑力的,因为其本身是apple为多核的并行运算提出的解决方案.虽然当前移动平台用双核的不多,但不影响GCD作为多线程编程的利器(ipad2已经是双核了,这无疑是一个趋势).http://www.cnblogs.c转载 2016-03-11 16:33:43 · 255 阅读 · 0 评论 -
iOS之引用计数
官方文档 在oc中采用arc机制,让编译器来进行内存管理,在新一代apple llvm编译器中设置arc为有效状态,就无需再次键入retain或release代码,降低程序崩溃,内存泄露等风险的同时,很大程度上减少了开发程序的工作量。编译器完全清楚目标对象,并能立刻释放那些不再被使用的对象。如此一来,应用程序将具有可预测性,并且能流程运行,运行速度也将大幅提升。但是,我们还是有必要来了解下原创 2016-03-11 15:45:20 · 1445 阅读 · 0 评论 -
iOS应用开发中实现页面跳转
iOS开发中,页面跳转的三种方式以及区别:1、NavgationController本身可以作为普通ViewController的容器,它有装Controller的栈,所以可以push和pop它们,实现所说的跳转;2、presentViewController是在当前Controller上呈现的一个模态Controller(ModalController),通常用于临时的使原创 2016-03-15 10:29:47 · 413 阅读 · 0 评论 -
CoreAnimation 和 CoreGraphics
首先说一下 Graphic是是图形的意思。对比一下头文件先CoreAnimation.h#ifndef COREANIMATION_H#define COREANIMATION_H#include #include #ifdef __OBJC__#import #import #import #import #import #import #impor转载 2016-03-15 10:43:13 · 1152 阅读 · 0 评论 -
Objective-C Category和Extension
1 Category1.1描述:是对原有类的一个扩展1、在Category定义的方法,会成为原始类的一部分,与其他方法的调用 没有区别2、通过给父类定义Category方法,其子类也会继承这些方法。如果子类添加Category方法1.2应用:1、对现有类进行一个扩展2、作为子类的替代手段:不需要定义和使用一个子类,你可以通过Category直转载 2016-03-15 10:56:23 · 302 阅读 · 0 评论 -
iOS获取设备方向(锁屏状态下通用)
1.设备没有锁屏(不能旋转屏幕)的状态下:UIDevice *device = [UIDevice currentDevice];但是当设备不能旋转的时候,此方法就不能获取到设备方向了。2. 当设备不能旋转的时候,我们可以通过CMMotionManager类来计算设备的方向:@property(nonatomic,strong)CMMotionManager *c原创 2016-05-19 10:08:15 · 3799 阅读 · 0 评论 -
iOS 自带二维码识别(识别二维码,条形码以及从相册中选择图片进行识别)
一:初始化 //扫描区域 UIImage *hbImage=[UIImageimageNamed:@"pick_bg"]; UIImageView * scanZomeBack=[[UIImageViewalloc] init]; scanZomeBack.backgroundColor = [UIColorclearColo原创 2016-04-21 12:28:23 · 6350 阅读 · 1 评论 -
IOS 解决集成zbar链接错误
一:下载zbar源码:安装mercurial,在命令行中输入:sudo easy_install mercurialhg clone http://zbar.hg.sourceforge.net:8000/hgroot/zbar/zbarcd zbar hg checkout iPhoneSDK-1.2.2 二: 修改zbar源码open原创 2016-04-20 11:53:14 · 462 阅读 · 0 评论 -
CocoaPods的安装使用和常见问题
转自:http://www.jianshu.com/p/6e5c0f78200a一、什么是CocoaPodsCocoaPods是iOS项目的依赖管理工具,该项目源码在Github上管理。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和第三方开源库的时间。在使用CocoaPods之前,开发项目需要用到第三方开源库的时候,我们需要转载 2016-05-14 13:27:15 · 636 阅读 · 1 评论