iOS
深海飞鸟
你好~
展开
-
Xcode7--免证书真机调试
Xcode7之前,想要真机调试,必须花99刀购买开发者账号,而且步骤繁琐,需要下载证书。随着Xcode7的推出,大幅度的简化了真机调试的步 骤,对ios开发工作者和正在学习ios开发的众多码农们,可以说是个不小的福利。现在,我就详细的向大家介绍一下如何免证书真机调试。 第一步:准备工作(Apple ID,iphone手机,Xcode7) Apple ID 申请网址:https://ap原创 2016-03-04 17:18:30 · 368 阅读 · 0 评论 -
IOS中获取各个文件的目录路径的方法和NSFileManager类
IOS中获取各种文件的目录路径的方法1.iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. 四个文件夹: documents,tmp,app,Library。 永久数据存储一般放在什么位置: 手动保存的文件在documents文件里 Nsuserdefaults保存的文件在tmp文件夹里转载 2016-08-27 17:11:47 · 3265 阅读 · 0 评论 -
iOS视图控制对象生命周期
1.iOS视图控制器的生命周期在面向对象的语言中,是对象,就一定要有生命周期,UIViewController也不例外,生命周期管理Controller的作用范围和时间,也管理其内对象的作用范围和时间。首先,UIViewController中与其生命周期有关的几个函数如下://类的初始化方法+ (void)initialize;//对象初始化方法- (instancetype)init;//转载 2016-08-11 11:16:11 · 425 阅读 · 0 评论 -
修改工程名,类名
1.修改工程名1.点击工程名,将其改为新名字,点击enter键,出现下图,选择Rename 2.打开工程所在文件夹,将项目文件名改为新名字,返回工程可看到项目内的文件都标红找不到了 3.点击工程内的项目文件夹,在右边属性栏的name中将名字改为新名字,然后点击下边的文件夹图案,选择正确的项目文件夹,文件将会重新被找到 4.将以下文件Info.plist File原创 2016-07-29 16:19:42 · 570 阅读 · 0 评论 -
输入框被键盘遮挡时 让整个view上移
//监听键盘响应事件 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; [[NSNotificationCenter defaultCenter] add转载 2016-08-12 16:14:41 · 463 阅读 · 0 评论 -
通知Notification
页面1- (void)viewDidLoad { [super viewDidLoad]; //添加观察者 [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(didUpdate:)原创 2016-08-10 17:53:39 · 215 阅读 · 0 评论 -
设备旋转UIDeviceOrientation 和 UIInterfaceOrientation
UIDeviceOrientation 是机器硬件的当前旋转方向 这个你只能取值 不能设置 UIInterfaceOrientation 是你程序界面的当前旋转方向 这个可以设置1.UIDeviceOrientation 和 UIInterfaceOrientation的定义1.UIInterfaceOrientation枚举值Portrait 表示 纵向,Land转载 2016-10-25 15:40:26 · 780 阅读 · 0 评论 -
iOS 10 新特性
1.语音识别苹果官方在文档中新增了API Speech,那么在以前我们处理语音识别非常的繁琐甚至很多时候可能需要借助于第三方框架处理,那么苹果推出了这个后,我们以后处理起来就非常的方便了,speech具有以下特点:可以实现连续的语音识别可以对语 音文件或者语音流进行识别最佳化自由格式的听写(可理解为多语言支持)和搜索式的字符串官方文档: 核心代码: #import <Speech/Spe转载 2016-10-19 10:19:39 · 318 阅读 · 0 评论 -
iOS10语音识别框架SpeechFramework应用
一、引言iOS10系统是一个较有突破性的系统,其在Message,Notification等方面都开放了很多实用性的开发接口。本篇博客将主要探讨iOS10中新引入的SpeechFramework框架。有个这个框架,开发者可以十分容易的为自己的App添加语音识别功能,不需要再依赖于其他第三方的语音识别服务,并且,Apple的Siri应用的强大也证明了Apple的语音服务是足够强大的,不通过第三方,也大转载 2016-10-19 10:27:54 · 2264 阅读 · 0 评论 -
tableView分割线
1.隐藏全部分割线 //隐藏全部分割线 _tableView.separatorStyle = UITableViewCellSeparatorStyleNone;2.解决分割线不顶头问题 //默认分割线是不靠最左边的,解决分割线不顶头问题 //在创建talbleView的下方添加这两个if if ([_tableView respondsToSelector:@原创 2016-11-19 12:02:58 · 450 阅读 · 0 评论 -
如何在同一台电脑上打开多个iPhone模拟器
有时候我们可能需要测试APP在多台手机上互相通信,例如你想要通过一台手机,控制另外一台手机上的APP界面变化。但是我们并没有两台iPhone,这时候我们就可以使用以下方法来模拟两台手机上的APP进行交互了。1.打开文本编辑器,将以下代码拷贝到文本内 #!/bin/shcd /Applications/Xcode.app/Contents/Developer/Applications/open -n转载 2016-12-20 11:16:58 · 6935 阅读 · 0 评论 -
问题:iOS 10 权限Crash问题
问题:iOS 10后调用麦克风,程序崩了。控制台输出以下信息:This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSMicrophoneUsageDescription原创 2016-10-26 10:52:38 · 375 阅读 · 0 评论 -
iOS 四种保存数据的方式
在iOS开发过程中,不管是做什么应用,都会碰到数据保存的问题。将数据保存到本地,能够让程序的运行更加流畅,不会出现让人厌恶的菊花形状,使得用户体验更好。下面介绍一下数据保存的方式:1.NSKeyedArchiver:采用归档的形式来保存数据,该数据对象需要遵守NSCoding协议,并且该对象对应的类必须提供encodeWithCoder:和initWithCoder:方法。前一个方法告诉系统怎么对对转载 2016-08-27 16:53:14 · 535 阅读 · 0 评论 -
沙盒
1.沙盒内的目录Documents,Library,tmp因为应用是在沙盒(sandbox)中的,在文件读写权限上受到限制,只能在几个目录下读写文件:Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录 tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除 Library/Caches:存放缓存文件,iTunes不会备份此转载 2016-08-27 16:21:00 · 378 阅读 · 0 评论 -
生成/扫描二维码
ViewController.m文件#pragma mark - 扫描按钮- (IBAction)scanning:(id)sender { [self Hidekeyboard]; QRViewController *scanner = [[QRViewController alloc] init]; scanner.block = ^(NSString *str原创 2016-08-16 16:31:54 · 863 阅读 · 0 评论 -
TextField控件详解
一、UITextField手动编写控件 UITextField *txtAccount = [[UITextField alloc] initWithFrame:CGRectMake(10, 10, 300, 30)]; //设置边框风格 [txtAccount setBorderStyle:UITextBorderStyleRoundedRect]; //设置边框宽度原创 2016-03-04 17:57:41 · 958 阅读 · 0 评论 -
字符串_过滤处理
Demo:限制只能有数字#define NUMBERS @"0123456789" ` ` `//限制只能输入特定的字符 //invertedSet方法是去反字符,把所有的除了kNumber里的字符都找出来(包含去空格功能) NSCharacterSet *cs;原创 2016-02-25 11:13:22 · 1099 阅读 · 0 评论 -
NSCharacterSet 字符操作
NSCharacterSet ,以及它的可变版本NSMutableCharacterSet,用面向对象的方式来表示一组Unicode字符。它经常与NSString及NSScanner组合起来使用,在不同的字符上做过滤、删除或者分割操作。为了给你提供这些字符是哪些字符的直观印象,请看看NSCharacterSet 提供的类方法:alphanumericCharacterSetcapitalized转载 2016-02-25 12:01:43 · 456 阅读 · 0 评论 -
自定义UITableViewCell
<一>使用nib 1、xib中指定cell的Class为自定义cell类型(注意不是设置File’s Owner的class) 2、调用 tableView 的 registerNib:forCellReuseIdentifier:方法向数据源注册cell 复制代码1. [_tableView registerNib:[UINib nibWithNibName:@"xxxxxCell" bu转载 2016-05-05 23:52:24 · 277 阅读 · 0 评论 -
Masonry Autolayout
例:[_imageViewmas_makeConstraints:^(MASConstraintMaker *make) { make.top.and.left.and.right.equalTo(self.contentView); make.height.equalTo(self.contentView.mas_width); }]转载 2016-05-06 00:46:10 · 914 阅读 · 0 评论 -
iOS 8 Xcode6 设置Launch Image 启动图片
Step11.点击Image.xcassets 进入图片管理,然后右击,弹出"New Launch Image"2.如图,右侧的勾选可以让你选择是否要对ipad,横屏,竖屏,以及低版本的ios系统做支持.这边我选了ios8.0,ios7.0,ios6没有做支持. 技术分享 Step2将规定尺寸的图片从你的文件中拖动进到固定位置. 系统 尺寸 分辨率 ios8 Re转载 2016-06-03 12:39:08 · 272 阅读 · 0 评论 -
block传值
1.block传值回来//block 第一步,id为返回类型,无则为void@property (nonatomic ,copy)id(^titleblock)();//block 第二步,在哪里调用blockif (_titleblock) { titleLabel.text = _titleblock();}//block 第三步,调用具体方法CellViewCo...原创 2016-07-22 09:05:37 · 342 阅读 · 0 评论 -
简单打包测试用
打spa包: 1、用xcode真机编译一下程序。 2、在左侧最下面有xxxxx.app文件,右键“show in finder” 3、将finder中的这个.app文件拖拽到itunes图标上 4、打开iTunes,选择应用程序(不是手机的应用程序)就能看到这个程序了 5、右键该图标“show in finder”,就找到这个ipa包了。原创 2016-07-30 10:02:21 · 399 阅读 · 0 评论 -
performSelector 那点事
在项目中,常常用到performSelectorXXX之类的方法,而且有很多类似方法;今天就来召集一下!1.performSelectorOnMainThread:withObject:waitUntilDone: - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wa转载 2016-07-21 14:56:01 · 307 阅读 · 0 评论 -
xib和storyboard的使用
xib1.单独创建xib1,右击–New File–iOS–User Interface–View,取名xxxViewControler2, 点击”File‘s Owner”,设置Class为xxxViewControler3, 右键”Files‘s Owner”, 里面有个默认的IBOutlet变量view, 看一下后面有没有做关联,如果没有就拉到下面的View和视图做个关联2.加载xib:1).原创 2016-08-16 14:50:41 · 353 阅读 · 0 评论 -
UIView层次管理,按钮切换
将一个UIView显示在最前面只需要调用其父视图的 bringSubviewToFront()方法。 将一个UIView层推送到背后只需要调用其父视图的 sendSubviewToBack()方法。 用第二层子视图 换 第一层子视图的位置 self.view是第0层 [self.view exchangeSubviewAtIndex:1 withSubviewAtIndex:2];转载原创 2016-08-16 15:12:06 · 1105 阅读 · 0 评论 -
常用宏定义及系统宏说明
1. 判断是否是iPad#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)typedef NS_ENUM(NSInteger, UIUserInterfaceIdiom) { UIUserInterfaceIdiomUnspecified = -1, UIUserInterfaceIdiomPh原创 2016-12-08 15:22:54 · 1241 阅读 · 0 评论