IOS - 技术教程文章

ChibiOS/RT 2.6.9 CAN Driver【代码】【图】

Detailed DescriptionGeneric CAN Driver.This module implements a generic CAN (Controller Area Network) driver allowing the exchange of information at frame level.Precondition:In order to use the CAN driver the HAL_USE_CAN option must be enabled in halconf.h.Driver State MachineThe driver implements a state machine internally, not all the driver functionalities can be used in any moment,any transiti...

利用openURL,在IOS应用中打开另外一个应用【代码】

在IOS中,实现一个应用启动另外一个应用,使用UIApplication的openURL:方法就可实现,这里以test跳到test02为例。(需要先创建这两个工程)注册自定义URL协议(在test中)首先被启动的应用需要向iPhone注册一个自定义URL协议。这是在info.plist文件进行的。1. 右键,选择“Add Row”2. Key值选择“URL types”3. 打开“Item 0″,然后为该key增加一个URL identifier。可以是任何值,但建议用“反域名”(例如 “com.fcplayer.test”...

iOS swift运算符详解【代码】

运算符是一种特定的符号或表达式,用来检验、修改或合并变量。例如,用求和运算符+可以对两个数字进行求和(如let i = 1 + 2);稍微复杂一点的例子有逻辑与操作符&& (如if enteredDoorCode && passedRetinaScan) ,自增长运算符 ++i (这是i=i+1的简写方式) Swift支持C标准库中的大多数运算符并提升了各自的兼容性,从而可以排除常见的编码错误。赋值操作符 (=)不会返回一个值,这样可以防止你因粗心将赋值运算符 (=)写成 (==)而引...

iOS测试模板

测试模板,每次写一个功能测试Demo时总是要新建一个工程,导入一些第三方库,比较麻烦,先提供一个测试模板,提供一些常用第三方库,自己就不用导了使用Cocospod管理第三方库常用(其他自行添加) AFNetworking (2.5.3) JSONKit-NoWarning (1.2) MBProgressHUD (0.9.1) SDWebImage (3.7.2)下载 工程模板Demo工程改名 原文:http://www.cnblogs.com/sixindev/p/4486989.html

iOS开发之新浪微博山寨版代码优化【代码】【图】

之前发表过一篇博客“IOS开发之新浪围脖”,在编写代码的时候太偏重功能的实现了,写完基本功能后看着代码有些别扭,特别是用到的四种cell的类,重复代码有点多,所以今天花点时间把代码重构一下。为了减少代码的重复编写把cell中相同的部分抽象成父类,然后继承。不过也是结合着storyboard做的。在优化时转发的View和评论的View相似,于是就做了个重用。在原来的代码上就把cell的代码进行了重写,所以本篇作为补充,关键代码还得看...

第一个iOS App RadioStation【代码】【图】

同样来自Mitch, Bennett, Lees的教材,本人编译环境为Xcode 7新建IOS Project, SingleView Application。在Xcode环境中 - UI布局,添加UI对象,链接UI组件和UI对象。 UI布局:通过拖曳右下角的UI组件到Main.Storyboard中的空白Layout中 添加UI对象本例中在ViewController的实例变量中添加了 IBOutlet类的各个UI组件的对象 - 对应三个动态Label,一个Slider在类外面还定义了一个定义按钮动作的方法 定义好了之后右击对应的标签,...

iOS UITableViewCell 几个方法的优先级

#第一组 - (void)setDataDict:(NSDictionary *)dataDict;这个方法优先执行- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{ self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; if (self) { } return self;}- (void)setDataDict:(NSDictionary *)dataDict_dataDict = dataDict;}#第二组 - (void)awakeFromNib;这个方法优先执行- (void)awakeFromN...

关于iOS 7以后textview 多行输入的时候,光标上下跳动的解决方法

光标上下跳动的问题:解决办法加入这个属性: _myTextView.layoutManager.allowsNonContiguousLayout=NO; 原文:http://my.oschina.net/zhuzhu1223/blog/423256

[iOS越狱开发 之十]dump自己的app【图】

个人原创,转帖请注明来源:cnblogs.com/jailbreaker之前在[iOS越狱开发 之六]使用class-dump导出Frameworks头文件,通过一个perl脚本来dump出Frameworks的所有头文件,这片帖子主要讲dump一个app的实战,创建一个singleView的app,名称myApp,添加了个MyClass类,立马包含2个方法,一个是在Interface里公开的,另外个方法是非公开的,直接看下图。main.m 里调用公开的showInfo方法(不修改main.m也不会影响我们dump):build一下项目,...

ios通知机制【图】

原文:http://www.cnblogs.com/supper-Ho/p/6259251.html

vue2 + element-ui + axios 开源项目推荐【图】

About此项目是 vue2 + element-ui + axios 构建的后台管理系统,自适应多种屏幕大小,所有数据都是mock server处理的,所以只需下载即可运行,非常方便就可以替换自己的rest api接口。技术栈vue2 + vuex + vue-router + axios + element-ui + webpack + ES6/7 + sass开源地址点我 演示地址点我更多angular1/2/4、ionic1/2/3、react、vue、微信小程序、nodejs等技术文章、视频教程和开源项目,请关注微信公众号——全栈弄潮儿。原文...

ios 多线程开发(三)Run Loops【代码】【图】

Run loops是线程相关的一些基本东西。一个run loop是一个处理消息的循环。用来处理计划任务或者收到的事件。run loop的作用是在有事做的时候保持线程繁忙,没事的时候让线程挂起。Run loop的管理并不是完全自动的。你仍然需要设计代码来在合适的时候启动run loop来相应事件。Cocoa和Core Foundation都提供了run loop对象来配置和管理run loop。程序并不需要创建这些对象,每个线程,包括主线程都有一个对应的run loop对象。只有非主...

【iOS】sqlite3的使用(増删改查)【代码】【图】

目录:一、sqlite3常用函数二、将sqlite3集成到项目,实现増删改查三、封装DBManager四、Demo一、sqlite3常用函数及解释(1)sqlite3_open: 用来创建和打开数据库文件,接收两个参数,第一个是数据库的名字,第二个是数据库的句柄。如果数据库文件不存在,将首先新建它,然后再打开它,否则只是打开它。(2)sqlite3_prepare_v2: 使用格式化的字符串来获得sql准备语句(prepared statement),然后转化为可被SQLite3识别的执行语句...

iOS 获取常见信息

NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary]; CFShow(infoDictionary);// app名称 NSString *app_Name = [infoDictionary objectForKey:@"CFBundleDisplayName"]; // app版本 NSString *app_Version = [infoDictionary objectForKey:@"CFBundleShortVersionString"]; // app build版本 NSString *app_build = [infoDictionary objectForKey:@"CFBundleVersion"];//手机别名: 用户定义的名称 NSStr...

【转】iOS开发6:UIActionSheet与UIAlertView【代码】【图】

原文: http://my.oschina.net/plumsoft/blog/42763iOS程序中的Action Sheet就像Windows中的 “确定-取消”对话框一样,用于强制用户进行选择。当用户将要进行的操作具有一定危险时,常常使用Action Sheet对用户进行危险提示,这样,用户有机会进行取消操作。Alert相当于Windows中的Messagebox,跟Action Sheet也是类似的。不同的是,Alert可以只有一个选择项,而Action Sheet却至少要两个选项。跟以往一样,假设我们已经建立了一个...

Xamarin.iOS项目编译提示Could not AOT the assembly

Xamarin.iOS项目编译提示Could not AOT the assembly错误信息:Could not AOT the assembly **************.dll这个错误是由于AOT编译文件太大造成的。用户可以尝试修改编译选项。在项目属性窗口中,设置iPhone Build Options,选择Linker Behavior中的Link all assemblies选项原文:http://www.cnblogs.com/daxueba-ITdaren/p/5905995.html

【iOS基础控件 - 15】- UINavigationController 多控制器 简单使用【代码】【图】

A.概念1.通常一个app有多个控制器2.需要对这些控制器进行管理3.有多个view的时候,用一个父view去管理多个子view4.控制器管理也是如此,使用给一个父控制器,去控制子控制器 为了方便管理控制器,系统提供了两个控制器UINavigationControllerUITabBarController B.UINavigationController的使用UINavigationController的使用步骤初始化UINavigationController设置UIWindow的rootViewController为UINavigationController根据具体情况...

iOS7系统 视图高度一直为480(上下部分黑屏)

今天遇到一个奇葩的问题,就是在iOS7以上的系统运行时,通过 UIScreen *screen = [UIScreen mainScreen]; CGRect rect = [screen bounds];获得的屏幕高度竟然为480。纠结了好久,上网查了下,http://blog.csdn.net/wsk_123_123/article/details/24969975中说是项目启动图片的原因,然后就去把项目启动图片设置好,果然就好了,但是这是为什么呢?我想不明白。原文:http://www.cnblogs.com/someone617-blog/p/4155551.htm...

iOS: 获取UITableViewCell上添加的子控件对应的cell【代码】

一、简单介绍UITableViewCell是UITableView的核心部分,我们在开发中因为功能的扩展经常需要自定义,以便在其上面添加子控件,例如button、label等。添加后获取这些子控件的cell,因为iOS不同系统的缘故此处会有一个坑,可能会崩溃。接下来以button为例来解决。 二、崩溃情况在自定义cell的时候,在cell上添加了一个button,然后在controller中调用这个button的时候要获取到cell,在iOS6中直接button.superView就可以。但是iOS7中不...

iOS开发-单例模式【代码】【图】

单例模式是一种非常常见的设计模式,之前文章中UIApplication就是一种典型的单例模式,单例理解起来叶很简单,就不是不管如果访问始终只有一个实例化对象,定义全局共享的变量,如果对象是空则初始化一个对象,如果对象已经存在则使用已经实例化的对象。单例设计模式的作用是使得这个类的一个对象成为系统中的唯一实例,因此需要用一种唯一的方法去创建这个对象并返回这个对象的地址。下面有一张苹果官网的图片可以参考一下:定义一...

Ios开发之 -- js和ios的交互

==WebViewJavascriptBridge的介绍== #下载:https://github.com/marcuswestin/WebViewJavascriptBridge#关于WebViewJavascriptBridge的介绍:http://blog.csdn.net/yanghua_kobe/article/details/8209751==WebViewJavascriptBridge(在与现有的业务代码结合使用中)的小问题==*demo部分( ExampleApp.html界面中第50行): bridge.callHandler(‘testObjcCallback‘, {‘foo‘: ‘bar‘}, function(response) { 由于底层...

iOS - 定时器【代码】

1、初始化+ (NSTimer *)timerWithTimeInterval:(NSTimeInterval)titarget:(id)aTargetselector:(SEL)aSelectoruserInfo:(id)userInforepeats:(BOOL)yesOrNo; + (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)titarget:(id)aTargetselector:(SEL)aSelectoruserInfo:(id)userInforepeats:(BOOL)yesOrNo;注:不用scheduled方式初始化的,需要手动addTimer:forMode: 将timer添加到一个runloop中。 而scheduled的初始化方...

ios http2客户端访问nginx失败bug【图】

我们将项目迁入腾讯云后,外网访问流量转发如下外网---》大禹BGP(BGPAntiDDoS)高防----》lbc(LoadBalance cluster)----》lb-----》projectios开发同事在用ios客户端访问项目发现请求失败,但是偶尔会成功。ios客户端访问默认http2,并且请求接口为post请求.根据如下定位了nginx版本对ios客户端的bug。原因:(为了减少网络时延,不少 HTTP/2 客户端会在建立 HTTP/2 连接时同时发送其它帧,包括用来 POST 数据的 DATA 帧。而 Ngin...

iOS中JSON解析和XML解析的区别

iOS中网络传输的格式可粗略的分为XML和JSON两种,具体的传输方式又可分为GET和POST. 其中XML格式是最早出现的,但是由于复杂,并且占用字节数相对较大,故不太适合移动端,后来简化为JSON格式. JSON本身的数据结构只有字典和数组两种,在IOS5以后出现了原生解析,而之前则有SBJson和JsonKit第三方库解析.SBJson和JsonKit的特点:  1.第三方库解析SBJson是所有解析效率里面最低的,之所以能够广泛普及,是因为其简单,封装的低耦合性,可以快...

iOS: 学习笔记, 透过Boolean看Swift(译自: https://developer.apple.com/swift/blog/ Aug 5, 2014 Boolean)【代码】

透过Boolean看Swift一个简单的Bool类型内部就包含了许多Swift主要功能, 如何构建一个简单类型是有趣的演示. 本文将创建一个与Bool类型在设计与实现上非常相似的新MyBool类型.我们希望通过设计和实现一个简单的Swift类型能让你更好的理解Swift语言是如何工作的.enum MyBool {case myTrue, myFalse }让我们从基本的定义开始. MyBool类型有两种不同状态, 用enum来实现extension MyBool {init() { self = .myFalse } }为了不误解,我们命...

iOS: 枚举类型 enum,NS_ENUM,NS_OPTIONS

一般情况下,我们采用C风格的enum关键字可以定义枚举类型。 [cpp] view plaincopyenum{ UIViewAnimationTransitionNone, UIViewAnimationTransitionFlipFromLeft, UIViewAnimationTransitionFlipFromRight, UIViewAnimationTransitionCurlUp, UIViewAnimationTransitionCurlDown, } UIViewAnimationTransition; [cpp] view plaincopy//位移操作枚举定义 enum { UIViewAutoresizingNone ...

iOS中使用block进行网络请求回调【代码】

iOS中使用block进行网络请求回调HttpRequest.h// // HttpRequest.h // UseBlockCallBack // // Created by Michael on 2/13/14. // Copyright (c) 2014 EIMS. All rights reserved. //#import <Foundation/Foundation.h>typedef void (^FinishBlock)(NSString *dataString);@interface HttpRequest : NSObject<NSURLConnectionDataDelegate>@property (strong, nonatomic) NSMutableData *resultData; @property (strong, nona...

[iOS]ARC和MRC下混编【图】

1.在MRC工程中使用ARC的文件(例如AFNetworking,SDWebImage,MJRefresh等)在Build Phases里找到对应.m 在后面添加-fobjc-arc(代表这个文件使用ARC进行编译)2.在ARC工程中使用MRC文件,找到对应的文件在Build Phases中 找到对应的.m 在后面修改成-fno-objc-arc (这些.m使用MRC编译) 原文:http://www.cnblogs.com/wangqi1221/p/5240193.html

vue全家桶(Vue+Vue-router+Vuex+axios)(Vue+webpack项目)

1.Vue.cli 脚手架全局安装 clinpm install --global vue-cli查看安装结果vue -V创建基于webpack的名为myindex的新项目vue init webpack myindex切换到项目cd myindex安装依赖npm install起飞npm run dev原文:https://www.cnblogs.com/chydream/p/10513192.html

一些iOS高效开源类库

因为iOS SDK相对比较底层,所以开发者就得受累多做一些体力活。不过幸运的是,有很多第三方的类库可以用来简化很多不必要的工作。笔者整理了一下在本人学习过程中用到的一些比较有用Objective-C开源类库,既是做一个总结,同时也希望通过这些分享,能提高各位的开发效率。KissXml——xml解析库相关教程:http://www.iteye.com/topic/625849http://sencho.blog.163.com/blog/static/83056228201151743110540/很方便的一个xml解析器...