06 2016 档案
摘要:JSON的序列化 把对象转换成jSON形式的二进制数据 投票的行为就是向服务器发送POST请求
阅读全文
摘要:iOS开发多线程篇—NSOperation基本操作 一、并发数 (1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3 (2)最大并发数:同一时间最多只能执行的任务的个数。 (3)最⼤大并发数的相关⽅方法 - (NSInteger)maxConcurrentOperatio
阅读全文
摘要:一、添加一个简单的图层 * 第1行创建了一个自动释放的CALayer对象,你也可以使用经典的alloc和init方法来创建 * 第12行将创建好的层添加到控制器的view的层中 二、添加一个显示图片的图层 * 在第7行设置需要显示的图片,注意,这里用的是UIImage的CGImage属性,是一种CG
阅读全文
摘要:// // ViewController.m // B03-多文件上传 // // Created by 0426iOS on 15/7/1. // Copyright (c) 2015年 0426iOS. All rights reserved. // #import "ViewControlle
阅读全文
摘要:iOS开发多线程篇—NSOperation简单介绍 一、NSOperation简介 1.简单说明 NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperationQueue实现多线程的具体步骤: (1)先
阅读全文
摘要:一、什么是CALayer * 在iOS系统中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView。 * 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个层。 * 在创建UIView对象时,UIView内部会自动创建
阅读全文
摘要:NSCharacterSet ,以及它的可变版本NSMutableCharacterSet,用面向对象的方式来表示一组Unicode字符。它经常与NSString及NSScanner组合起来使用,在不同的字符上做过滤、删除或者分割操作。为了给你提供这些字符是哪些字符的直观印象,请看看NSCharac
阅读全文
摘要:音频基础知识 组成 音频文件的组成:文件格式(或者音频容器) + 数据格式(或者音频编码)。 文件格式(或音频容器)是用于形容文件本身的格式。 我们可以通过多种不同的方法为真正的音频数据编码。例如CAF文件便是一种文件格式,它能够包含MP3格式,线性PCM以及其它数据格式的音频。 数据格式(或音频编
阅读全文
摘要:1.搞清楚touch事件的传递(事件的响应链) 事件的响应(responder chain) 只有继承了UIResponder的类才能响应touch事件,从上图的响应者链可以看出,优先是最上层的view响应事件,如果该view有视图控制器的话会是下一个响应者,否者就是该view的父视图,这样至上而下
阅读全文
摘要:- (void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion MainVC *mainVC = [
阅读全文
摘要:iOS开发多线程篇—GCD的常见用法 一、延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) withObject:nil afterDelay:2.0]; // 2秒后再调用self的run
阅读全文
摘要:前言 在Java中,我们可以通过"对象名.成员变量名"来访问对象的公共成员变量,这个就称为"点语法"。比如: 1.在Student类的第2行定义了一个公共的成员变量age 2.然后在第5行通过点语法直接给stu的成员变量age赋值 当然,正规的做法是让成员变量私有化,让外界使用公共的get方法和se
阅读全文
摘要:iOS开发多线程篇—GCD的基本使用 一、主队列介绍 主队列:是和主线程相关联的队列,主队列是GCD自带的一种特殊的串行队列,放在主队列中得任务,都会放到主线程中执行。 提示:如果把任务放到主队列中进行处理,那么不论处理函数是异步的还是同步的都不会开启新的线程。 获取主队列的方式: dispatch
阅读全文
摘要:OC是一门面向对象的语言,因此它也有类、对象、静态\动态方法、成员变量的概念。这讲就来创建第一个OC的类。 一、语法简介 1.类 在Java中,我们用1个.java文件就可以描述清楚一个类;在OC中,一般用2个文件来描述一个类: 1> .h:类的声明文件,用于声明成员变量、方法。类的声明使用关键字@
阅读全文
摘要:1 translationInView是UIPanGestureRecognizer下面的一个属性 locationInView则是UIGestureRecognizer下面的属性 2 translationInView 在指定的坐标系中移动 locationInView 通常是指单点位置的手势 得
阅读全文
摘要:NSUserDefaults类概述 NSUserDefaults类为和默认的系统进行交互提供了一个系统编程接口。默认的系统允许一个应用来定制它的行为以适应用户的喜好。例如,你可以允许用户去决定你的应用程序显示什么样的计量单位或者文件多少时间自动保存。应用程序在用户默认的数据库里分配记录的参数值。这些
阅读全文
摘要:最近一个项目在请求数据时比较慢,界面显示非常的不友好,然后就想把上一次请求的数据给存储起来,当进入界面的时候先显示上一次的数据,然后当本次数据请求完毕时再进行此次数据的刷新 本人对数据操作不怎么熟悉,新人可以参考。在网上看了iOS数据本地化方法,我选了NSUserDefaults方法和文件写入的方法
阅读全文
摘要:14个Xcode中常用的快捷键操作 在Xcode 6中有许多快捷键的设定可以使得你的编程工作更为高效,对于在代码文件中快速导航、定位Bug以及新增应用特性都是极有效的。 当然,你戳进这篇文章的目的也在于想要快速的对代码文件进行操作,或者是让Xcode的各面板更为适应你小本子的屏幕。 在Xcode 6
阅读全文
摘要://重写time的getter方法 //判断addtime和当期的时间差 // < 60分钟 返回 n分钟前 // > 60分钟 返回 n小时前 //超过24小时 返回 -月-日 - (NSString *)time{ // 1 先把json中的数字转换成日期对象 //把拿到的json中的时间的字符
阅读全文
摘要:// // SetViewController.m // dfhx // // Created by dfhx_iMac_001 on 16/4/5. // Copyright © 2016年 luoyun. All rights reserved. // #import "SetViewContr
阅读全文
摘要:#pragma mark — 键盘遮挡 -(void)createNotifiticationCenter{ //创建通知中心 NSNotificationCenter * center = [NSNotificationCenter defaultCenter]; //键盘弹出 [center a
阅读全文
摘要:想实现的效果: // // LHQsuggestionViewCtrl.m // A13 - 设置 // // Created by vic fan on 16/6/23. // Copyright © 2016年 李洪强. All rights reserved. // #import "LHQs
阅读全文
摘要:iOS开发多线程篇—线程的状态 一、简单介绍 线程的创建: self.thread=[[NSThread alloc]initWithTarget:self selector:@selector(test) object:nil]; 说明:创建线程有多种方式,这里不做过多的介绍。 线程的开启: [s
阅读全文
摘要:说明:这个Objective-C专题,是学习iOS开发的前奏,也为了让有面向对象语言开发经验的程序员,能够快速上手Objective-C。如果你还没有编程经验,或者对Objective-C、iOS开发不感兴趣,请忽略。学习本专题之前,建议先学习C语言专题。 在上一讲,已经新建了第一个OC程序,这讲就
阅读全文
摘要:1. 显示用户头像用UIImageView实现,添加默认图片后效果如下图所示,头像显示为矩形图片。 代码实现: 2. UIView里面有一个属性layer,CALayer类主要为内容展示和动画操作,在这里我们可以通过对layer的设置来得到圆角的头像。 让我们一起在.m文件中添加一个设置圆角图片的方
阅读全文
摘要:iOS开发之使用XMPPFramework实现即时通信 iOS开发之使用XMPPFramework实现即时通信 关于XMPP的理论介绍在本篇博客中就不做赘述了,如何在我们之前的微信中加入XMPP协议来实现通信呢?下面将会介绍一下XMPP的基本的知识,让我们的微信可以实现互联通信。要做的准备工作是要有
阅读全文
摘要:即时通讯(IM),在IOS这片江湖里面已经算是一个老者了,我这小旋风也是在很早以前巡山的时候,就知道有即时通讯这个妖怪,以前也多多少少接触过一些,在造APP的时候用过,哎呀,说着说着就感觉要跑题了,脑海中怎么波涛翻滚的样子。不好,才开头了两句,~~(>_<)~~忍住!!说回正题,我知道的即时通讯有用
阅读全文
摘要:iOS开发多线程篇—GCD介绍 一、简单介绍 1.什么是GCD? 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数 2.GCD的优势 GCD是苹果公司为多核的并行运算提出的解决方案 GCD会自动利用更多的CPU内核(比如双核、四核) G
阅读全文
摘要:一.打开Xcode,新建Xcode项目 二.选择最简单的命令行项目 因为我们只是学习OC语法,还未正式进入iOS开发,所以选择命令行项目即可 三.输入项目名称,选择Foundation框架进行创建项目 * Type一项一定要选择Foundation框架,因为OC的常用类都包含在此框架中 * 最下面的
阅读全文
摘要:SDWebImage是一个开源的第三方库,它提供了UIImageView的一个分类,以支持从远程服务器下载并缓存图片的功能。它具有以下功能: 提供UIImageView的一个分类,以支持网络图片的加载与缓存管理 一个异步的图片加载器 一个异步的内存+磁盘图片缓存 支持GIF图片 支持WebP图片 后
阅读全文
摘要:NSOperation综合案例: 1.项目简介/UI 搭建 */ 重点: 1.搭建 UI 界面; 2.构建数据模型; 3.缓存开发中需要用到的数据模型; 4.注意在懒加载方法中,不要出现点语法. { 1. 搭建 UI 界面; // 导航控制器 + 表格视图控制器(根控制器) 2. 构建数据模型; /
阅读全文
摘要:iOS开发多线程篇—线程间的通信 一、简单说明 线程间通信:在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信 线程间通信的体现 1个线程传递数据给另1个线程 在1个线程中执行完特定任务后,转到另1个线程继续执行任务 线程间通信常用方法 - (void)performSelector
阅读全文
摘要:前言 由于大部分朋友对iOS开发还是有比较多的疑问,比如是不是一定要买iPhone和苹果笔记本才能做iOS开发?因此,这讲就为广大有意学习iOS开发的朋友们进行解惑。 一、什么是iOS开发 iOS是由苹果公司开发的手持设备操作系统,目前搭载这款操作系统的设备有:iPhone、iPad、iPod to
阅读全文
摘要:iOS开发多线程篇—线程安全 一、多线程的安全隐患 资源共享 1块资源可能会被多个线程共享,也就是多个线程可能会访问同一块资源 比如多个线程访问同一个对象、同一个变量、同一个文件 当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题 示例一: 示例二: 问题代码: 打印结果: 二、安全隐患分
阅读全文
摘要:前言 目前来说,Objective-C(简称OC)是iOS开发的核心语言,在开发过程中也会配合着使用C语言、C++,OC主要负责UI界面,C语言、C++可用于图形处理。近来,流传Ruby、C#也可以开发iOS应用程序了,甚至还说Ruby比OC更适合写iOS程序。这让不少学习iOS开发的朋友感到很困扰
阅读全文
摘要:iOS开发UI篇—UITableviewcell的性能问题 一、UITableviewcell的一些介绍 UITableView的每一行都是一个UITableViewCell,通过dataSource的 tableView:cellForRowAtIndexPath:方法来初始化每⼀行 UITabl
阅读全文
摘要:1. 用ARC管理内存 ARC(Automatic Reference Counting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露。它自动为你管理retain和release的过程,所以你就不必去手动干预了。 下面是你会经常用来去创建一个V
阅读全文
摘要:本文主要是说一些iOS9适配中出现的坑,如果只是要单纯的了解iOS9新特性可以看瞄神的开发者所需要知道的 iOS 9 SDK 新特性。9月17日凌晨,苹果给用户推送了iOS9正式版,随着有用户陆续升级iOS9,也就逐渐的衍生出了一系列的问题,笔者也在赶忙为自己维护的App做适配,本文写的一些坑基本都
阅读全文
摘要:[iOS]iOS9 3DTouch、ShortcutItem、Peek And Pop技术一览 3DTouch UITouch类里API的变化 iOS9中添加的属性 altitudeAngle 当笔平行于平面时,该值为0 当笔垂直于平面时,该值为Pi / 2 estimatedProperties
阅读全文
摘要:AFNetworking是IOS上常用的第三方网络访问库,我们可以在github上下载它,同时github上有它详细的使用说明,最新的AFNetworing2.0与1.0有很大的变化,这里仅对2.0常用的使用方法进行总结 基于NSURLConnection的API 提交GET请求 AFHTTPReq
阅读全文
摘要:提到从摄像头/相册获取图片是面向终端用户的,由用户去浏览并选择图片为程序使用。在这里,我们需要过UIImagePickerController类来和用户交互。 使用UIImagePickerController和用户交互,我们需要实现2个协议<UIImagePickerControllerDeleg
阅读全文
摘要:从摄像头或者是从相册中读取图片,需要通过UIImagePickerController类来实现,在使用UIImagePickerController时,需要是实现下面两个协议 ? 1 <uinavigationcontrollerdelegate,uiimagepickercontrollerdel
阅读全文
摘要:一. 概要 在 iOS 设备中,照片和视频是相当重要的一部分。最近刚好在制作一个自定义的 iOS 图片选择器,顺便整理一下 iOS 中对照片框架的使用方法。在 iOS 8 出现之前,开发者只能使用 AssetsLibrary 框架来访问设备的照片库,这是一个有点跟不上 iOS 应用发展步伐以及代码设
阅读全文
摘要:01 应用层 传输层 网络层 网络存址 链路层 02 TCP/ UDP 03 socket 04 使用socket发送http请求 网络第二天 解析数据 拿到的数据是 json或者html 对json进行解析 01拿到json 02 解析json 03 显示出来 web服务器 Ftp服务器 配置Ap
阅读全文
Xcode7 beta 网络请求报错:The resource could not be loaded because the App Transport Security policy requir
摘要:今天升级Xcode 7.0 bata发现网络访问失败。输出错误信息 The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.
阅读全文
摘要:iOS平台在快速的发展,各种接口正在不断的更新。随着iOS9的发布,又有一批老方法不推荐使用了,你若调用这些方法,运行的结果是没有问题的,但是会出现警告“***is deprecated :first deprecated in iOS 9.0 - Use *******”.就像如图所示: 在实际项
阅读全文
摘要:// // ViewController.m // B01-socket // // Created by Lihongqiang on 16/6/27. // Copyright (c) 2016年 itcast. All rights reserved. // #import "ViewCont
阅读全文
摘要:iOS开发多线程篇—创建线程 一、创建和启动线程简单说明 一个NSThread对象就代表一条线程 创建、启动线程 (1) NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:n
阅读全文
摘要:一、typedef作用简介 * 我们可以使用typedef关键字为各种数据类型定义一个新名字(别名)。 在第3、第4、第6行分别给int、unsigned int、float起了个别名,然后在main函数中使用别名定义变量,用来跟原来的基本类型是完全一样的。输出结果: 当然,给类型起别名后,原来的i
阅读全文
摘要:1> 网络数据传输(敏感数据[账号\密码\消费数据\银行卡账号], 不能明文发送) 2> 协议的问题(自定义协议, 游戏代练) 3> 本地文件存储(游戏的存档) 4> 源代码 1> SIP(Session Initiation Protocol),会话发起协议 2> SIP是建立VOIP连接的 IE
阅读全文
摘要:1> 大公司的开放API 2> github上面别人发布的框架 用 l 第三方API在官方文档都有说明,按照官方文档的一步一步做 l 参考官方提供的示例程序 l 先自己创建一个工程试试,等熟悉了,在使用到项目中 友盟(包括第三方登录和分享),高德地图,百度地图,AFN,SDWebimage,FMDB
阅读全文
摘要:1. NSRunLoop的实现机制,及在多线程中如何使用 NSRunLoop是IOS消息机制的处理模式 >1.NSRunLoop的主要作用:控制NSRunLoop里面线程的执行和休眠,在有事情做的时候使当前NSRunLoop控制的线程工作,没有事情做让当前NSRunLoop的控制的线程休眠。 >2.
阅读全文
摘要:编写SQL语句来操作原来表中的字段 1> 增加表字段 ALTER TABLE 表名 ADD COLUMN 字段名 字段类型; 2> 删除表字段 ALTER TABLE 表名 DROP COLUMN 字段名; 3> 修改表字段 ALTER TABLE 表名 RENAME COLUMN 旧字段名 TO
阅读全文
摘要:ios中不存在缓存池满的情况,因为通常我们ios中开发,对象都是在需要的时候才会创建,有种常用的说话叫做懒加载,还有在UITableView中一般只会创建刚开始出现在屏幕中的cell,之后都是从缓存池里取,不会在创建新对象。缓存池里最多也就一两个对象,缓存池满的这种情况一般在开发java中比较常见,
阅读全文
摘要:1> KVO是基于runtime机制实现的 2> 当某个类的对象第一次被观察时, 系统就会在运行期动态地创建该类的一个派生类,在这个派生类中重写基类中任何被观察属性的 setter 方法。 派生类在被重写的 setter 方法实现真正的通知机制(Personà NSKVONotifying_Pers
阅读全文
摘要: 对于iPhone开发初学者来说,很想实现自己在iPhone上的第一个小程序,准备工作就绪侯就信心满满的开始了!一般来说大家可能都是从Hello World做起吧。 反正我是的,:),如果按照文档上的说明去做,一般也不会出现什么问题。也建议初学者这样开始,毕竟会增强我们自己的信心。 但是当我们自己
阅读全文
摘要:开发中常见的一类崩溃错误是遇到:unrecognized selector sent to instance 0xaxxxx…而backtrace又无法明确说明错误在哪行代码,如何快速定位BUG呢? 有时读代码一下很难找到是哪个instance出的问题,这时定制有效的DEBUG断点是最好的办法,方法
阅读全文
摘要:1> 使用Analyze进行代码的静态分析 2> 为避免不必要的麻烦, 多人开发时尽量使用ARC 2.非自动内存管理情况下怎么做单例模式. 创建单例设计模式的基本步骤 · >声明一个单件对象的静态实例,并初始化为nil。 >创建一个类的类工厂方法,当且仅当这个类的实例为nil时生成一个该类的实例 >
阅读全文
摘要:1. 多线程的底层实现? 1> 首先搞清楚什么是线程、什么是多线程 2> Mach是第一个以多线程方式处理任务的系统,因此多线程的底层实现机制是基于Mach的线程 3> 开发中很少用Mach级的线程,因为Mach级的线程没有提供多线程的基本特征,线程之间是独立的 4> 开发中实现多线程的方案 l C
阅读全文
摘要:iOS开发多线程篇—多线程简单介绍 一、进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ、Xcode,系统就会分别启动2个进程 通过“活动监视器”可以查看Mac系统中所开启的进程 2.什么是线程 1
阅读全文
摘要:上一讲介绍了结构体类型,这讲就介绍C语言中的另一种数据类型 枚举类型。枚举类型在iOS中也是很常用的,用法跟Java中的枚举类似。 一、枚举的概念 枚举是C语言中的一种基本数据类型,并不是构造类型,它可以用于声明一组常数。当一个变量有几个固定的可能取值时,可以将这个变量定义为枚举类型。比如,你可以用
阅读全文
摘要:今天突然想到微信朋友圈发照片,涉及个人隐私的地理位置是否外泄。因为iphone拍照的照片都会带有地理位置等信息,我们先来实现怎么读取里面的安全信息,然后再来分析 [objc] view plain copy #import "ViewController.h" #import <ImageIO/Im
阅读全文
摘要:这几天在搞iphone上面一个应用的开发,里面有需要摄像头/相册编程和图片上传的问题,在这里总结一下。 【部分知识】 iphone中图像通常存储在4个地方【相册、应用程序包、沙盒、Internet】,通过这4个源,我们就可以存取应用图片。 相册 iphone的相册包含摄像头胶卷+用户计算机同步的部分
阅读全文
摘要:本文实例为大家分享了iOS实现压缩图片上传功能,供大家参考,具体内容如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
阅读全文
摘要:C语言的核心部分都说得七七八八了,相信大家已经对C语言的基本数据类型(char\int\float)、数组、指针都很熟悉了,今天来学习C语言中另外一种数据类型:结构体。在iOS开发中,结构体是经常用到的数据类型,使用频率不亚于指针,所以需要重视,不过用法非常简单。 一、什么是结构体 * 在前面的时候
阅读全文
摘要:UIWebView和UICollectionViewController的使用 UIWebView UIWebView是iOS内置的浏览器的控件, 可以浏览网页, 打开文档等 .系统自带的Safari浏览器就是通过UIWebView实现的, 能够加载html/htm, pdf, docx, txt等
阅读全文
摘要:1. Runtime Objective-C 是面相运行时的语言(runtime oriented language),就是说它会尽可能的把编译和链接时要执行的逻辑延迟到运行时。这就给了你很大的灵活性,你可以按需要把消息重定向给合适的对象,你甚 至可以交换方法的实现,等等。 RunTime简称运行时
阅读全文
摘要:1.如何追踪app崩溃率,如何解决线上闪退 当iOS设备上的App应用闪退时,操作系统会生成一个crash日志,保存在设备上。crash日志上有很多有用的信息,比如每个正在执行线程的完整堆栈跟踪信息和内存映像,这样就能够通过解析这些信息进而定位crash发生时的代码逻辑,从而找到App闪退的原因。通
阅读全文
摘要:1.决定面试成败的主导因素: 技术而非人事! 以我目前面试的公司来说;一个公司是否决定要你,主要由技术部门决定,只要技术谈妥了,人事一般不会有什么问题;人事只负责跟你谈薪资,入职时间,当然也会聊一下你离职原因,工作经历等等... 2.一般公司的面试流程: 行政(前台)填写应聘资料 ——> 笔试(一般
阅读全文
摘要:iOS开发多线程篇—自定义NSOperation 一、实现一个简单的tableView显示效果 实现效果展示: 代码示例(使用以前在主控制器中进行业务处理的方式) 1.新建一个项目,让控制器继承自UITableViewController。 1 // 2 // YYViewController.h
阅读全文
摘要:一、在Java中,全局变量的定义没有严格的位置规定 全局变量可以定义在类的最前面,也可以定义在类的最尾端,也就说一个方法可以访问在它之后定义的变量。 可以看到,第4行定义的test方法可以访问第8行定义的变量a,这是完全没有问题的。 二、在C语言中,全局变量定义的位置是有限制的 默认情况下,一个函数
阅读全文
摘要:NSDictionary *attributes = @{ NSForegroundColorAttributeName : [ UIColorredColor ], NSFontAttributeName : [ UIFont fontWithName : @"Zapfino" size : 16
阅读全文
摘要:让状态栏显示网络等待标志 状态栏是可以通过UIApplication类提供的一些方法来修改的,比如完全去掉状态栏或者修改风格,不过这些改变只是在你的程序内部,当你退出你的程序又会复原。 UIApplication *myApp = [UIapplication sharedApplication];
阅读全文
摘要:日志: [html] view plain copy 2013-03-10 01:52:47.710 FoundationDemo[6215:303] array1 :( obj ) 2013-03-10 01:52:47.712 FoundationDemo[6215:303] array2 :(
阅读全文
摘要:一、extern与函数 在前面我提到过一句话:如果一个程序中有多个源文件(.c),编译成功会生成对应的多个目标文件(.obj),这些目标文件还不能单独运行,因为这些目标文件之间可能会有关联,比如a.obj可能会调用c.obj中定义的一个函数。将这些相关联的目标文件链接在一起后才能生成可执行文件。 先
阅读全文
摘要:一、变量的作用域 C语言根据变量作用域的不同,将变量分为局部变量和全局变量。 1.局部变量 1> 定义:在函数内部定义的变量,称为局部变量。形式参数也属于局部变量。 2> 作用域:局部变量只在定义它的函数内部有效,即局部变量只有在定义它的函数内部使用,其它函数不能使用它。 2.全局变量 1> 定义:
阅读全文
摘要:iOS开发Swift篇—(十)方法 一、简单说明 跟其他面向对象语言一样,Swift中的方法可以分为2大类: (1)实例方法(Instance Methods) 在OC中,实例方法以减号(-)开头 (2)类型方法(Type Methods) 在OC中,类型方法以加号(+)开头 二、实例方法 1.什么
阅读全文
摘要:iOS开发Swift篇—(九)属性 一、类的定义 Swift与Objective-C定义类的区别 Objective-C:一般需要2个文件,1个.h声明文件和1个.m实现文件 Swift:只需要1个.swift文件 Swift中类的定义格式 二、属性 1.什么是属性 Swift中的属性(Proper
阅读全文
摘要:iOS开发Swift篇—(八)函数(2) 一、函数类型 函数类型也是数据类型的一种,它由形参类型和返回值类型组成,格式是 (形参类型列表) -> 返回值类型 sum函数的函数类型是(Int, Int) -> Int printLine函数的函数类型有4种表示方法 (1)Void -> Void (2
阅读全文
摘要:iOS开发Swift篇—(七)函数 一、函数的定义 (1)函数的定义格式 (2)形参列表的格式 形参名1: 形参类型1, 形参名2: 形参类型2, … (3)举例:计算2个整数的和 (4)没有返回值的函数 如果函数没有返回值,有3种写法 (5)没有形参的函数 一个函数如果没有形参,函数名后面的小括号
阅读全文
摘要:iOS开发Swift篇—(六)流程控制 一、swift中的流程控制 Swift支持的流程结构如下: 循环结构:for、for-in、while、do-while 选择结构:if、switch 注意:这些语句后面一定要跟上大括号{},在C语言中不是必须的 说明:跟C语言对比,用法基本一样的有:for、
阅读全文
摘要:iOS开发Swift篇—(五)元组类型 一、元组类型介绍 1.什么是元组类型 元组类型由 N个 任意类型的数据组成(N >= 0),组成元组类型的数据可以称为“元素” 示例: let position = (x : 10.5, y : 20) // position有2个元素,x、y是元素的名称 l
阅读全文
摘要:iOS开发Swift篇—(四)运算符 一、运算符 1.Swift所支持的部分运算符有以下一些 赋值运算符:= 复合赋值运算符:+=、-= 算术运算符:+、-、*、/ 求余运算符:% 自增、自减运算符:++、-- 比较运算符:==、!=、>、<、>=、<= 逻辑运算符:&&、||、! 三目运算符:?
阅读全文
摘要:iOS开发Swift篇—(三)字符串和数据类型 一、字符串 字符串是String类型的数据,用双引号""包住文字内容 let website = "http://www.wendingding.com" 1.字符串的常见操作 (1)用加号 + 做字符串拼接 let scheme = "http://
阅读全文
摘要:iOS开发Swift篇—(二)变量和常量 一、语言的性能 (1)根据WWDC的展示 在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3.9倍 在实现 RC4加密算法时Objective-C的的性能是Python的127倍,Swift的性能是P
阅读全文
摘要:iOS开发Swift篇—简单介绍 一、简介 Swift是苹果于2014年WWDC(苹果开发者大会)发布的全新编程语言 Swift在天朝译为“雨燕”,是它的LOGO 是一只燕子,跟Objective-C一样,可以用于开发iOS、Mac应用程序 苹果从2010年7月开始设计Swift语言,耗时4年打造
阅读全文
摘要:一 说明 1)关于多线程部分的理论知识和OC实现,在之前的博文中已经写明,所以这里不再说明。 2)该文仅仅简单讲解NSThread在swift语境中的一些使用和注意点,别他。 3)本文涉及代码可以从https://github.com/HanGangAndHanMeimei/Code地址获得。 二
阅读全文
摘要:iOS开发Swift篇(01) 变量&常量&元组 说明: 1)终于要写一写swift了。其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了。另外,对于14年部分iOS开发Swift篇专题的博文也不再做任何的校正和更新,特此说明。 2)该博文对应代码可以在https://g
阅读全文
摘要:这讲介绍最后一个预处理指令 文件包含 一、基本概念 其实我们早就有接触文件包含这个指令了, 就是#include,它可以将一个文件的全部内容拷贝另一个文件中。 二、一般形式 1.第1种形式#include <文件名> 直接到C语言库函数头文件所在的目录中寻找文件 2.第2种形式 #include "
阅读全文
摘要:一、关键字 C语言提供的有特殊含义的符号,共32个。 在Xcode中关键字全部高亮显示,关键字全部都为小写。如return、int等。 二、标识符 定义:标识符是程序员在程序中自定义的一些符号和名称。关键字是系统自带的,标识符是自定义的。如函数的名称等,用来区分各种事务。 标识符有一定的命名规则:
阅读全文
摘要:条件编译的概念 在很多情况下,我们希望程序的其中一部分代码只有在满足一定条件时才进行编译,否则不参与编译(只有参与编译的代码最终才能被执行),这就是条件编译。 一、基本用法 1> 如果条件1成立,那么编译器就会把#if 与 #elif之间的code1代码编译进去(注意:是编译进去,不是执行,很平时用
阅读全文
摘要:一、数据 图片文字等都是数据,在计算机中以0和1存储。 (一)分类 数据分为静态数据和动态数据。 ①. 静态数据:一些永久性的的数据,一般存储在硬盘中,只要硬盘没坏数据都是存在的。一般以文件的形式存储在硬盘上,电脑关机重启后依然存在。 ②. 动态数据:程序运行过程中,动态产生的的临时数据,一般存储在
阅读全文
摘要:预处理指令简介 1.C语言在对源程序进行编译之前,会先对一些特殊的预处理指令作解释(比如之前使用的#include文件包含指令),产生一个新的源程序(这个过程称为编译预处理),之后再进行通常的编译 2.为了区分预处理指令和一般的C语句,所有预处理指令都以符号"#"开头,并且结尾不用分号 3.预处理指
阅读全文
摘要:前言 前面我们花了接近3个章节学习指针,应该都感受到指针的强大了吧。指针可以根据地址直接操作内存中的数据,使用得当的话,不仅能使代码量变少,还能优化内存管理、提升程序性能。关于指针的内容还非常多,比如指针数组、指向数组的指针、指向指针的指针,呵呵,看到这些名字是否都觉得头大了,不过我就暂时不在博客中
阅读全文
摘要:C语言的scanf函数 一、变量的内存分析 (一)字节与地址 ①. 内存以字节为单位 每个字节都有自己的内存地址,根据地址就可以找到该字节。整个内存相当于一整个酒店,而酒店以房间为单位,在这里每个房间就相当于是每个字节,地址就是房号,根据房号可以找到房间(根据地址也可以找到内存中的字节)。相邻房间的
阅读全文
摘要:字符串回顾 一个字符串由一个或多个字符组成,因此我们可以用字符数组来存放字符串,不过在数组的尾部要加上一个空字符'\0'。 上面的代码定义了一个字符数组s来存储字符串"李洪强",系统会自动在尾部加上一个空字符'\0'。 内存分布大致如右图所示: 从上一篇文章 <指向一位数组元素的指针>中可以看出指针
阅读全文
摘要:C语言运算符 一、算术运算 C语言一共有34种运算符,包括常见的加减乘除运算。 ①. 加法:+ 还可以表示正号 ②. 减法:- 还可以表示负号 ③. 乘法:* 非数学意义上的X ④. 除法:/ 注意1/2的值为0而非0.5 ⑤. 取余(模运算):两个整数相除之后的余数(注意两边都必须是整数,带符号只
阅读全文
摘要:一、用指针指向一维数组的元素 输出结果:,说明已经通过指针间接修改了数组元素的值,跟指向一个普通int类型变量是一样的。 由于数组名代表着数组的首地址,即a == &a[0],因此第8行代码等价于: 内存分析图如下,一个指针变量占用2个字节,一个int类型的数组元素占用2个字节 二、用指针遍历数组元
阅读全文
摘要:C语言流程控制 一、流程控制结构 (1)顺序结构:按书写顺序执行每一条语句。 (2)选择结构:对给定的条件进行判断,根据判断结果决定执行哪一段代码。 (3)循环结构:在给定条件成立的情况下,反复执行某一段代码。 二、选择结构-if (一)if简单使用 1) 第一种结构: a) 如果条件为真,就执行后
阅读全文
摘要:直接引用 1. 回想一下,之前我们是如何更改某个变量的值? 我们之前是通过变量名来直接引用变量,然后进行赋值: char a; a = 10; 2. 看上去是很简单,其实程序内部是怎么操作的呢? 其实,程序对变量的读写操作,实际上是对变量所在的存储空间进行写入或取出数据。就上面的代码而言,系统会自动
阅读全文
摘要:typedef NSRange *NSRangePointer;NS_INLINE NSRange NSMakeRange(NSUInteger loc, NSUInteger len) { NSRange r; r.location = loc; r.length = len; return r;
阅读全文
摘要:摘要 string类型是objective-c中用的最多的类型之一,有时会出现字符串中有我们不想要的字符。 如 "hello world"中的空格,或是"hello/world"中的'/',亦或是"你好A你好"中的'A'。这些都可以通过NSString中的方法来解决。 摘要 string类型是obj
阅读全文
摘要:NSCharacterSet 简单用法 NSCharacterSet 简单用法 NSCharacterSet其实是许多字符或者数字或者符号的组合,在网络处理的时候会用到 NSMutableCharacterSet *base = [NSMutableCharacterSet lowercaseLet
阅读全文
摘要:NSString 替换字符串中某一位置的文字 replaceCharactersInRange NSString 替换字符串中某一位置的文字 replaceCharactersInRange NSString 替换字符串中某一位置的文字 - (void)viewDidLoad { NSMutable
阅读全文
摘要:NSString其实是一个对象类型。NSString是NSObject(Cocoa Foundation的基础对象)的子类 一、NSString的创建 1、创建常量字符串。NSString *astring = @"This is a String!"; 2、创建空字符串,给予赋值。NSString
阅读全文
摘要:UITextField的使用详解 UITextField的使用详解 UITextField控件是开发中,使用频率比较高的控件了,那么有必要总结一下。 一、UITextField手动编写控件 UITextField *txtAccount = [[UITextField alloc] initWith
阅读全文
摘要:关于在iOS平台上进行JSON解析,已经有很多第三方的开源项目,比如TouchJson,JSONKit,SBJon等,自从iOS5.0以后,苹果SDK推出了自带的JSON解决方案NSJSONSerialization,这是一个非常好用的JSON生成和解析工具,效率也是比其他第三方开源项目的高很多,详
阅读全文
摘要:- (IBAction)JOSNButtonPressed:(id)sender { NSString *str=[@"http://douban.fm/j/mine/playlist?type=n&h=&channel=0&from=mainsite&r=4941e23d79" stringByA
阅读全文
摘要:ios5中apple增加了解析JSON的api——NSJSONSerialization。网上已经有人做过测试,NSJSONSerialization在效率上完胜SBJSON、TouchJSON、YAJL、JSONKit、NextiveJson。详情见这里。既然apple为我们提供了这么良好的工具,
阅读全文
摘要:用变量a给出下面的定义 用变量a给出下面的定义 用变量a给出下面的定义 a)一个整型数(An integer) b) 一个指向整型数的指针(A pointer to an integer) c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer to
阅读全文
摘要:sizeToFit()使用心得: 很多的初学者,包括我在内,当初在学习的时候,特别纠结什么时候用这个sizeToFit()。 下面我就来分享一下我的一些使用心得。 一.我们先来看看官方文档对sizeToFit()的声明:(Swift版本的) // calls sizeThatFits: with c
阅读全文
摘要:C语言函数 一、函数 C语言程序是由函数构成的,每个函数负责完成一部分的功能,函数将工恩呢该封装起来,以供程序调用。 二、函数定义 目的:将一些常用的功能封装起来,以供日后调用。 步骤:确定函数名,确定函数体,调用 格式:返回值类型 函数名(形式参数列表) { 函数体 } 三、函数调用 定义函数需要
阅读全文
摘要:一、字符处理函数 下面介绍的两个字符处理函数都是在stdio.h头文件中声明的。 1.字符输出函数putchar 上面的3种用法,输出的都是大写字母A。 * putchar一次只能输出一个字符,而printf可以同时输出多个字符 2.字符输入函数getchar getchar会将用户输入的字符赋值给
阅读全文
摘要:C语言内存分析 一、进制 概念:进制是一种计数方式,是数值的表现形式 4种主要的进制: ①. 十进制:0~9 ②. 二进制:0和1 ③. 八进制:0~7 ④. 十六进制:0~9+a b c d e f C语言在默认的情况下为十进制。 Int num=1010;//十进制 Int num=0b1100
阅读全文
摘要:一、字符串简介 * 在Java中,一个字符串可以用String类型来存储 C语言中没有String这种类型。其实字符串就是字符序列,由多个字符组成,所以在C语言中,我们可以用字符数组来存储字符串。 * 字符串可以看做是一个特殊的字符数组,为了跟普通的字符数组区分开来,应该在字符串的尾部添加了一个结束
阅读全文
摘要:为了让大家更好地学习和理解数组,我们先来认识一下内存中的"地址"。 地址 1.计算机中的内存是以字节为单位的存储空间。内存的每一个字节都有一个唯一的编号,这个编号就称为地址。凡存放在内存中的程序和数据都有一个地址,也就是说,一个函数也有自己的内存地址。 2.当定义一个变量时,系统就分配一个带有唯一地
阅读全文