- 博客(38)
- 资源 (1)
- 收藏
- 关注
原创 判断手机号密码格式特殊字符正则
#pragma mark判断手机号码正则表达式-(BOOL) isValidateMobile:(NSString*)mobile{ //手机号以13,15,18开头,八个\d数字字符 NSString*phoneRegex =@"^1[3|4|5|7|8][0-9]\\d{8}$"; NSPredicate*phon
2017-09-04 10:52:24
984
原创 presentViewController多级跳转返回
UIViewController *rootVC = self.presentingViewController; while (rootVC.presentingViewController) { rootVC = rootVC.presentingViewController; }
2017-09-04 10:51:03
662
原创 ios返回指定页
#pragma mark返回指定页-(void)goBack:(UIBarButtonItem *)sender{ for (UIViewController *controller inself.navigationController.viewControllers) { if ([controllerisKindOfCl
2017-09-04 10:50:01
356
原创 屏幕尺寸/机型/系统版本判定
为了开发方便, 做了如下代码块:判断系统版本12345678910// 判断系统版本 eg:@"4.0"NSString * systemVersion = [UIDevice currentDevice].systemVersion;if ([systemVersion isEqualToString:# Version#>])
2016-04-11 16:05:57
581
转载 iOS开发系列--通知与消息机制
概述在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情。iOS中通知机制又叫消息机制,其包括两类:一类是本地通知;另一类是推送通知,也叫远程通知。两种通知在iOS中的表现一致,可以通过横幅或者弹出提醒两种形式告诉用户,并且点击通知可以会打开应用程序,但是实现原理却完全不同。今天就和大家一块去看一下如何在i
2016-04-11 16:03:08
780
原创 UIWindow输入密码
#import @interface PasswordInputWindow : UIWindow+(PasswordInputWindow *)sharedInstance;-(void)show;@end用户从任何一个界面按home键退出,再过一段时间从后台切回来,显示一个输入密码界面,只有用户输入正确的密码,才能进入推出前的界面,我们用一个集成自UIWindow的子类P
2016-04-07 10:49:58
356
转载 APP支付之使用ApplePay支付开发步骤
最近苹果推出了一种新的支付方式–ApplePay支付,虽然毁誉参半,但是不得不承认国内很多的公司还有商家已经开通了ApplePay,可能最先锋的莫过于肯德基和招商银行了。抛开优劣与否不说,作为一个开发者自然要第一时间把ApplePay搞懂搞通,用不用再另说。ApplePay的支付流程在具体去进行每一步操作的时候一定要先了解一下ApplePay的具体的操作流程。这里是官方给出
2016-03-13 17:00:09
5016
转载 Runtime那些事儿(消息机制)
一、关于runtime之前在项目中有遇到过用runtime解决改变全局字体的问题,所以再一次感受到了runtime黑魔法的强大,趁现在有机会分享一下对runtime的一些理解。在对象调用方法是Objective-C中经常使用的功能,也就是消息的传递,而Objective-C是C的超集,所以和C不同的是,Objective-C使用的是动态绑定,也就是runtime。Objective-C的消
2016-03-02 14:19:19
315
转载 iOS下的实际网络连接状态检测
作者:管振纬序言网络连接状态检测对于我们的iOS app开发来说是一个非常通用的需求。为了更好的用户体验,我们会在无网络时展现本地或者缓存的内容,并对用户进行合适的提示。对绝大部分iOS开发者来说,从苹果示例代码改变而来的各种Reachablity框架是实现这个需求的普遍选择,比如这个库。但事实上,基于此方案的所有实现,都无法帮助我们检测真正的网络连接状态,它们能检
2016-02-26 09:39:25
639
转载 深入理解RunLoop
RunLoop 是 iOS 和 OS X 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。目录RunLoop 的概念RunLoop 与线程的关系RunLoop 对
2016-02-25 10:33:14
448
转载 iOS绘图教程
本文是《Programming iOS5》中Drawing一章的翻译,考虑到主题完整性,翻译版本中加入了一些书中未涉及到的内容。希望本文能够对你有所帮助。(本文由海水的味道翻译整理,转载请注明译者和出处,请勿用于商业用途!原文) Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低级别、轻量级、高保真度的2D渲染。该框架
2016-02-24 10:03:08
331
原创 block
把零碎的块(block)清理掉.//定义blockvoid (^printTheNum)(int) = ^(int num){ NSLog(@"%d",num);};- (void)viewDidLoad { [super viewDidLoad];// 1. printTheNum(5);//这里输出51.这里为什么会输出5呢?这就简
2016-01-26 15:14:30
388
转载 iOS项目上传到AppStore步骤流程
1.登录developer.apple.com2.点击member center后 进下图3.点击certificates Identifiers进下图4.点击Certificates进下图,首先创建App IDs5.其次创建相应的证书 Development是开发环境下的证书, Production是生产环境下的证书(往
2016-01-25 15:44:34
617
转载 团队开发
由于本人项目经验有限,关于架构设计方面的东西理解有限,我个人对MVVM的理解主要是借鉴于之前的用过的MVC的Web框架~在学校的时候用过ThinkPHP框架,和SSH框架,都是MVC的架构模式,今天MVVM与传统的MVC可谓是极为相似,也可以说是兄弟关系,也就是一家人了。说到架构设计和团队协作,这个对App的开发还是比较重要的。即使作为一个专业的搬砖者,前提是你这砖搬完放在哪?不只是Cod
2016-01-22 21:56:35
758
原创 带大家一步一步的封装一个聊天键盘
众所周知,一个聊天键盘,肯定要有表情,发送图片啊,语音啊,视频什么的,我封装的就只有表情(是emoji),其他几个扩展的,放在一个view里,等以后在去添加功能好吧,我们开始,首先要思考封装一个这样的聊天键盘,我们需要什么,肯定需要一个表情按钮,UItextView,还有一个扩展的view,而UITextView可能需要有占位文字,所以我们首先自己定制有占位文字的UITextView
2016-01-19 19:28:18
1605
1
转载 总结的一些iOS App审核被拒的经历.
注意: 2014年2月初开始,Apple开始拒绝采集IDFA(identifier for advertising)而未集成任何广告服务的应用进入AppStore。 为解决此问题,一般的SDK都为用户提供两个版本的SDK,包括采集IDFA的标准版和不采集IDFA的无IDFA版。下面是总结的一些iOS App审核被拒的经历.希望帮助到大家1、程序有重大bug,程序不能启动,或者中途退
2016-01-11 16:16:26
20196
3
转载 iOS APP提交上架最新流程
,写篇帖子送给同为菜鸟的你,如果里面有很菜的东西,大牛请自动忽略,毕竟这也是还为菜鸟的我的备忘录呢! 一、证书的导出 1.1 前期工作 首先你需要有一个苹果的开发者帐号,一个Mac系统。 如果没有帐号可以在打开http://developer.apple.com/申请加入苹果的开发者计划。怎么申请网上有详细的介绍,因为我没有实际申请过,所
2016-01-11 12:38:04
495
转载 音频 音效 音频会话 录音
音频在iOS中音频播放从形式上可以分为音效播放和音乐播放。前者主要指的是一些短音频播放,通常作为点缀音频,对于这类音频不需要进行进度、循环等控制。后者指的是一些较长的音频,通常是主音频,对于这些音频的播放通常需要进行精确的控制。在iOS中播放两类音频分别使用AudioToolbox.framework和AVFoundation.framework来完成音效和音乐播放。音效A
2016-01-06 20:24:00
2006
转载 摄像头 UIImagePickerController拍照和视频录制
下面看一下在iOS如何拍照和录制视频。在iOS中要拍照和录制视频最简单的方法就是使用UIImagePickerController。UIImagePickerController继承于UINavigationController,前面的文章中主要使用它来选取照片,其实UIImagePickerController的功能不仅如此,它还可以用来拍照和录制视频。首先看一下这个类常用的属性和方法:
2016-01-06 20:22:24
4748
翻译 视频 MPMoviePlayerController
在iOS中播放视频可以使用MediaPlayer.framework种的MPMoviePlayerController类来完成,它支持本地视频和网络视频播放。这个类实现了MPMediaPlayback协议,因此具备一般的播放器控制功能,例如播放、暂停、停止等。但是MPMediaPlayerController自身并不是一个完整的视图控制器,如果要在UI中展示视频需要将view属性添加到界面中。下面
2016-01-06 20:21:01
2395
原创 MD5
摘要算法只要字符串内容不同,就会生成一个32位长度的MD5码存取图片的名称 (网址之类的字符串不能直接做图片的名称,可以将网址做MD5加密,使用的时候,对此网址进行MD5加密,然后将加密后的码去存的地方找相同的)用户登录时的密码(对密码进行MD5加密算法,)将图片归档为dat
2016-01-06 13:23:24
279
原创 iOS程序员常逛得网址
图标https://icomoon.io/app/#/selecthttp://iconfont.cn/repositorieshttp://www.iconfont.cnUI设计UI中国:http://www.ui.cn/list.htmlUI4App:http://www.ui4app.com技术新闻
2016-01-04 14:38:50
354
原创 数据结构--队列-泛型OC&C++混编-泛型编程
在这篇文章里, 您可以学习到:数据结构简介数据结构的逻辑结构和物理结构队列OC和C++在Xcode中的混编泛型编程思想泛型编程实现循环队列和链表队列博客中使用的图片均来自网络一.数据结构简介数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检
2016-01-02 20:50:22
2308
原创 使用讯飞语音实现语音识别,朗读文字
一.走近讯飞(iFly)语音技术实现了人机语音交互,使人与机器之间沟通变得像人与人沟通一样简单。语音技术主要包括语音合成和语音识别两项关键技术。让机器说话,用的是语音合成技术;让机器听懂人说话,用的是语音识别技术。此外,语音技术还包括语音编码、音色转换、口语评测、语音消噪和增强等技术,有着广阔应用空间。早期的语音识别技术让人啼笑皆非, 就连Siri刚出道时, 也是漏洞百出. 但
2016-01-02 20:47:58
13954
3
原创 本地推送.极光推送.APNs推送
1.本地推送的简单应用2.APNs介绍3.使用极光推送向你的APP推送一条信息一.本地推送本地通知推送也叫闹钟通知, 这是通知中比较简单的一部分.如果将app比喻成一个人, 某个controller比喻成身体的某一部分(手臂), 那么由手臂注册通知并且发送通知, 最后被大脑(AppDelegate)收到这个通知并作出处理.下面我们模拟一个情景, 在ViewContr
2015-12-30 14:47:38
2630
转载 地图坐标转换->火星坐标
在开始这个题目之前,先给大家再次扫扫盲,扫的不是坐标系统的盲,而是我们国家所使用的坐标系统。大家都知道,美国GPS使用的是WGS84的坐标系统,以经纬度的形式来表示地球平面上的某一个位置,这应该是国际共识。但在我国,出于国家安全考虑,国内所有导航电子地图必须使用国家测绘局制定的加密坐标系统,即将一个真实的经纬度坐标加密成一个不正确的经纬度坐标,我们在业内将前者称之为地球坐标,后者称之为火星坐标,具
2015-12-29 09:47:19
557
原创 iOS开发 百度地图高德地图谷歌地图系统地图
在这篇文章里, 你可以学习到:1.iOS系统地图2.百度地图的简单了解3.高德地图的简单了解4.谷歌地图的简单了解一.系统自带地图首先需要明白, 地图和定位是两个功能.定位: 通过GPS或者Wifi或者蜂窝数据定位到手机的具体物理位置, 返回值通常是一个地理坐标.地图: 和我们实际生活中的地图类似, 基本作用是展示, 至于其中的插大头针, 导航, 查询公
2015-12-29 08:58:34
1073
原创 iOS开发--AVPlayer实现音乐播放器
这是一篇教学Blog. 重点不完全在播放器上, 目的是通过这个过程掌握以下知识点:单例block传值多线程代理传值通知观察者网络请求数据解析多控件布局开发模式和框架设计今天敲一个音乐播放器, 音乐源我就不共享了, 涉及到版权保护, 别问我的源是哪儿来的. 不告诉你们
2015-12-28 15:35:25
13327
2
原创 iOS开发-CoreData的简单使用
什么是CoreData?CoreData是iOS5之后才出现的一个框架, 它提供了对象-关系映射(ORM)的功能, 即能够将OC对象转换成数据, 保存在SQLite数据库文件中, 也能够将保存在数据库中的数据还原成OC对象.这个过程中, 我们不需要编写任何的sql语句, 这个有点类似于著名的Hibernate持久框架, 不过功能肯定没有Hibernate强大.CoreData是如何
2015-12-28 15:33:17
1355
原创 多线程
- (void)viewDidLoad { [super viewDidLoad]; // 进程和线程的区别 //程序:有源代码生成的可执行的应用// 进程:一个正在运行的程序可以看做一个进程,进城拥有对立运行所需的全部资源 //线程:程序中独立运行的代码段,如接受QQ消息的代码 // self.vie
2015-12-17 20:18:06
341
原创 数据持久化初级沙盒
#import @interface Phone : NSObject@property(strong,nonatomic) NSString *color;@property(strong,nonatomic) NSString *brand;@property(strong,nonatomic) NSString *price;@end
2015-12-16 20:12:19
446
原创 UI数据库
#import "ViewController.h"#import "LCDBManager.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; Student *s1 = [
2015-12-16 20:09:05
619
原创 iOS中 常用的mac终端指令汇总
最最常用的是以下10条:1.使用caffeinate阻止Mac运行屏幕保护和睡眠caffeinate能阻止Mac进入睡眠状态,而且屏幕保护也不会激活。我们最好使用-t为命令加入具体的时间。比如下面的命令可以使Mac一小时内不进入睡眠状态。caffeinate -t 3600复制代码2.使用pkgutil解压PK
2015-12-16 20:02:15
631
原创 UI通讯录
// AppDelegate.h// Lesson10_tableView编辑//// Created by Floating_SH on 15/11/28.// Copyright © 2015年 SH. All rights reserved.//#import @interface AppDelegate : UIResponder @pr
2015-12-03 19:39:52
364
原创 自定义cell
import “AppDelegate.h”import “RootTableViewController.h”@interface AppDelegate ()@end@implementation AppDelegate(BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionar
2015-12-01 17:30:03
381
原创 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-12-01 17:26:55
83
原创 UITableView
#import "RootViewController.h"#import "Student.h"#import "DetailViewController.h"@interface RootViewController ()@property(strong,nonatomic) NSMutableArray *group;//分组名数组@property(stro
2015-11-30 11:34:13
258
原创 UITableView可编辑状态常用操作
1、标记行 这里讲的标记行指的是单击此行,可以实现在此行右边出现一个勾,如下图所示:为了实现标记功能,在ViewController.m中@end之前添加代码:#pragma mark - #pragma mark Table Delegate Methods - (void)tableView:(UITableView *)ta
2015-11-30 11:30:56
332
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人