iOS编程
弗拉德x0
一生只有一个职业:学生
展开
-
OC冒泡排序
原文地址:OC冒泡排序作者:王硕 NSMutableArray*p = [[NSMutableArrayalloc]initWithObjects:@"3",@"5",@"4",@"1",nil]; for (int i = 0; icount]; i++) { for(int j=i+1; jcount];j++) {转载 2013-10-11 23:40:53 · 3094 阅读 · 0 评论 -
iOS编程——MPMoviePlayerController之切换闪屏问题
MPMoviePlayerController 是 iOS 封装的视频播放器,最近在做一个有着视频频换切换的项目,尝试了很多方法,总是有闪屏出现,逛遍了Git、翻阅了S.O 未果。暂时还未解决问题,不过发现一个有趣的事情:你有没有见过iPad或是iPhone屏幕上同时有两个或两个以上的视频在播放?为了验证这个事情,自己写了个Demo截图如下:原创 2013-11-26 09:57:29 · 2048 阅读 · 0 评论 -
iOS编程——1种下拉效果(渐变)
今儿去面试,面试官给了这么个需求,如下图(请无视字体丑陋):在拖动TableVIew的时候 在屏幕外面的 图A 和 被 TabelView遮挡的 图C 以相同的速度 出现在 屏幕中。我们可以把 图B 比作 水 ,图 A 是 云 ,图 C是 船, 首先我们看到的只有 图 B 水 ,在拖动的时候 图A 云 和 图 C 船 匀速出现的屏幕中。Table原创 2013-10-25 21:29:42 · 2249 阅读 · 0 评论 -
iOS编程——AVPlayer解决闪屏问题
问题终于解决,选用AVPlayer,重置一下AVPlayerItem就不会出现闪屏现象,注册一个通知同样可以实现循环播放,而且AVPlayer可以自定义播放样式,给了我们更大的发挥空间,完全可以自己DIY播放器样式。并且AVPlayer完全可以实现两个视频窗口播放!1.需要引入两个类库:在.h中引入#import 在.m中引入#import 代码如下:原创 2013-11-26 18:49:33 · 7360 阅读 · 0 评论 -
信息图:iOS 7开发者需要知道的事
如果你想为iOS 设备开发app,你需要知道如何与软件交互,如何设计,你还要知道苹果独特的开发理念和开发工具。真正的能力还需要成功地从其他行业领域借鉴核心概念。最后把所有这些东西糅合进你的信息库中。 所以我们画了一张iOS 7开发者应该的知识体系。这里列出的一些概念也适用于任何软件项目,罗列的工具也有不少与Android开发重叠。但是如果你能随口说出每个叶子转载 2013-11-27 16:45:38 · 892 阅读 · 0 评论 -
iOS编程之——引用系统外字体(自定义字体)
1、先去网站下载一个字体包,也就是.tff文件,不知道怎么下载的可以度娘2、将下载后的.tff文件加载到我们的包里面3.配置Plist文件(这是关键一步)4.OK,现在运行一下 就能看到我们添加的字体了。这就是我们添加到里面的字体了(别问我怎么找到的,我是参考下面字体找到的)下载链接:htt原创 2013-12-06 17:25:30 · 1589 阅读 · 0 评论 -
iOS开发——UIImage实现Sprite精灵帧动画效果
做过动画的朋友都知道,一些好看的绚丽的动画都是拿cocos2d 或者 2d-x 来写的,但是2d 与 2d-x 主要是做游戏的,不太适合做应用开发。虽然苹果已经推出了新的SpriteKit专门来做游戏,遗憾的是它只支持iOS7,于是今天给大家带来一个解决的办法,用UIImage 就能实现帧动画,只用一张图就行!先上图:当然这是别人写的一个类目,我简单的做下分享,原创 2013-12-23 18:19:18 · 2763 阅读 · 0 评论 -
iOS开发——TKDragView 图片拖拽移动效果
拖动图中的三块绿草皮,正确的位置是 绿色边框的UIView,错误的位置是红色UIView,实现这一功能并且从拖拽Begin,End,Move等等的事件都可以捕捉到,这就是封装好的TKDragView,一个图片可以有多个落脚点,只要是正确的Frame就可以把图片拖进去。非常适合做儿童拖拽拼图应用!GitHub链接:https://github.com/mapedd/TKDra原创 2013-12-23 18:37:29 · 2859 阅读 · 0 评论 -
UIView 渐变效果
CGContextRef context=UIGraphicsGetCurrentContext(); CGGradientRef myGradient; CGColorSpaceRef myColorSpace; size_t locationCount = 3; CGFloat locationList[] = {0.0, 0.5, 1.0}; CGF原创 2014-03-14 14:46:55 · 1359 阅读 · 0 评论 -
iOS开源系列——下拉刷新控件
下拉刷新原创 2015-11-09 15:51:21 · 2693 阅读 · 0 评论 -
ALAssetsLibrary获取所有图片
通过创建ALAssetsLibrary 的实例可以访问系统Photos里的图片与视频。这个库包括了保存的图片,从iTunes导入的和从其他设备里面导入的图片,你可以访问所有的分类和保存图片视频。 用普通的alloc和init就可以创建ALAssetsLibrary的实例,所有你从这个实例中获取得到的对象的生命周期和ALAssetsLibrary这个实例的生命周期一致。转载 2015-11-09 15:19:14 · 892 阅读 · 0 评论 -
iOS开源系列——OC框架排名列表
Objective-C框架排名—快点我!原创 2015-11-09 15:59:18 · 1816 阅读 · 0 评论 -
iOS开源系列——苹果官方Demo
http://developer.apple.com/library/ios/samplecode/ClockControlPalette/ClockControlPalette.zip http://developer.apple.com/library/ios/samplecode/MVCNetworking/MVCNetworking.zip http://developer.appl原创 2015-11-09 16:07:41 · 3238 阅读 · 0 评论 -
iOS开源系列——完整开源项目
完整项目v2ex - v2ex 的客户端,新闻、论坛。 apps-ios-wikipedia - apps-ios-wikipedia 客户端。 jetstream-ios - 一款 Uber 的 MVC 框架。它同时提供了多用户实时通讯支持,一旦启动 JetStream 后端服务,通过 WebSocket 协议可以分分钟建立多用户实时通讯应用。DeckRocket - 在相同 WiFi 网转载 2015-11-10 13:27:51 · 1844 阅读 · 0 评论 -
iOS编程——流媒体(m3u8)的播放与下载
前一段时间做了一个视频播放下载应用,抓取的是优酷的视频,虽然优酷有自己的开发平台http://open.youku.com/,但未真正的实现。所以只能靠抓取视频源,Youku的视频采取了加密+动态的获取方式,视频地址需要访问网站动态获取,而结果则还需经过解密等操作。我们的目的只解析到网站视频的m3u8地址,好在在ios 的web可以实现: // 初始化webView原创 2015-11-10 14:37:58 · 14755 阅读 · 0 评论 -
iOS编程——异步GET请求
.h#import @interface RootViewController : UIViewController{ }@property (nonatomic,strong)NSMutableData * receiveData;@end.m#import "RootViewController.h"@interface RootViewContr原创 2013-11-05 21:36:17 · 928 阅读 · 0 评论 -
iOS中的设计模式——单例模式(二)
单例模式的作用是解决:“应用中只有一个实例的问题” 的一类问题。 在一个iOS应用的生命周期中,有时候我们只需要某个类的一个实例。例如:iOS设备都有一个重力加速计硬件设备,要访问设置在X轴、Y轴和Z轴的重力加速度,就必然要有一个类与硬件设备沟通来实时获得这些数据,这个类就是UIAccelerometer。除了实时地获得数据,该类还能够保持X轴、Y轴和Z轴的状态。但是这个类只需原创 2013-10-31 21:43:18 · 1318 阅读 · 0 评论 -
iOS中的设计模式——MVC模式(一)
MVC (Model-View-Controller,视图-视图-控制器)模式是相当古老的设计模式之一,它最早出现在Smalltalk语言中。现在,很多计算机语言和架构都采用了MVC模式。 MVC模式是一种复合设计模式,由“观察者”(Observer)模式、“策略”(Strategy)模式和 “合成”(Composite)模式等组成。 1.模型。保存应用数据的状态,回应原创 2013-10-31 21:22:45 · 1248 阅读 · 0 评论 -
OC 冒泡排序 ——时间排序
NSMutableArray * array = [NSMutableArrayarrayWithObjects: @"2013-10-18", @"2013-10-11", @"2013-10-16",原创 2013-10-12 11:22:44 · 3677 阅读 · 0 评论 -
Mac系统下Xcode开发SVN终端命令
登陆SVN:svn ls svn://192.168.X.250/XXXX/XXX (SVN服务器地址)svn checkout svn://192.168.X.250/branches/XXX/XXXX svn update 下载同步svn commit上传svn commit -m"log"svn delete 路径svn cleansvn原创 2013-10-12 20:33:42 · 2226 阅读 · 0 评论 -
iOS 4层结构(iOS技术概要)—— Cocoa Touch 层(一)
苹果公司的iOS平台强力推动了iOS开发,引来了不少人从事iOS开发,也成就了一批一批的开发者,如果你是新手,请把本文作为iOS技术一览,便于你对iOS开发有个粗略的认识;如果你已经是iOS开发者,建议你收藏本文,它是你日常开发的指导工具,为你程序开发提供技术资料。 本文主要介绍:iOS 4层结构中每层结构的特性以及功能、每层结构包含的iOS开发框架。本文是在iOS7即将推出之际撰写的原创 2013-10-12 21:26:36 · 6331 阅读 · 0 评论 -
iOS 4层结构(iOS技术概要)—— Media 层(二)
Media层媒体层提供了图形、音频和视频技术支持,以达到移动设备上极佳的多媒体体验。一、图形技术高品质图形是iOS应用程序非常重要的一部分,最简单(和最有效)的方法来创建一个应用程序是使用预渲染图片与UI标准控件结合实现系统绘制。然而,有些时候你可能需要一些稍微复杂的图形,你可以使用下面的技术来管理你的图形内容:1、Core Graphics(Quartz)处理本地2D矢量图形和基原创 2013-10-14 11:03:14 · 4148 阅读 · 0 评论 -
iOS 4层结构(iOS技术概要)—— Core Services层(三)
Core Services层为所有的应用程序提供基础系统服务。可能应用程序并不直接使用这些服务,但它们是系统很多部分的基础。高阶特性下面的部分会描述Core Services层一些关键技术:一、云存储 iOS5.0引入,云存储允许你的应用程序存储用户文档和数据到云端,以及从用户的电脑和iOS设备访问这些数据。把用户的数据存在云端,意味着用户可以在任何设备上查看以及编辑这些文档无原创 2013-10-14 11:21:04 · 2715 阅读 · 0 评论 -
iOS 4层结构(iOS技术概要)—— Core OS 层(四)
Core OS层Core OS层包含了很多技术的底层技术支持,在应用程序里面,尽管你没有直接使用这些底层技术,但是他们被高层的框架所使用。如果需要显示的处理安全模块或者与硬件通信,你会Core OS层上的一些框架。 Accelerate FrameworkiOS4.0引入的,包含接口执行DSP、线性代数以及图像处理计算。这个框架的优势:自己写接口封装这些底层高性能的接口,这原创 2013-10-14 11:23:20 · 3550 阅读 · 0 评论 -
App Store 审核指南(中文版)
App Store 审核指南(中文版)时间: 2010-09-17 12:51苹果对开发者提交的应用的审核之严格是出了名的,了解苹果的审核标准对于开发者防止应用被拒有着十分重要的意义。几天前苹果官方公布了 App Store审核指南,后经译言网翻译成了 苹果对开发者提交的应用的审核之严格是出了名的,了解苹果的审核标准对于开发者防止应用被拒有着十分重要的意义。几天前苹果官方公布了转载 2013-10-14 14:12:03 · 1359 阅读 · 0 评论 -
iOS学习之iOS沙盒(sandbox)机制和文件操作(一)
1、iOS沙盒机制 iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等。 1.1、每个应用程序都有自己的存储空间 1.2、应用程序不能翻过自己的围墙去访问别的存储空间的内容 1.3、应用程序请求的数据都要通过权限检测,假如不符合条件的话,不会被放行转载 2013-10-14 16:45:15 · 722 阅读 · 0 评论 -
UIKit 框架类图
转载 2013-10-14 14:18:49 · 1188 阅读 · 0 评论 -
iOS动画—UIView动画以及CoreAnimation动画
温故知新~一、UIView动画1.1稍微简单点的动画1.2稍微复杂的动画二、CoreAnimation动画 CA动画的特点:只能添加到UIView的CALayer上面,必须需要引入框架 CA动画使用步骤: 1.创建动画,需原创 2013-10-16 18:26:30 · 1716 阅读 · 0 评论 -
iOS编程——多态
在面向对象语言中,接口的多种不同的实现方式即为多态。多态指定一个实体同时具有多种形式,它是面向对象程序设计的一个重要特征。如果一个语言只支持类而不支持多态,只能说明它是基于对象的,而不是面向对象的。 通俗来讲,允许将子类类型的指针赋值给父类类型的指针。例如:-(UIView *)viewWithTag:(int)tag,返回值是UIView类型,但是具体的返回对象不原创 2013-10-24 14:16:05 · 1868 阅读 · 2 评论 -
iOS本地推送与取消本地通知—UILocalNotification的使用
1.首先我们初始化一个 UISwith self.swith = [[UISwitch alloc] initWithFrame:CGRectMake(80, 80, 160, 30)]; [_swith addTarget:self action:@selector(doLocalNotifition) forControlEvents:UIControlEventValu原创 2013-10-21 17:35:34 · 11101 阅读 · 0 评论 -
iOS一种多线程的管理方式——GCD
GCD,全称Grand Central Dispath,是苹果开发的一种支持并行操作的机制。它的主要部件是一个FIFO队列和一个线程池,前者用来添加任务,后者用来执行任务。 GCD中的FIFO队列称为dispatch queue,它可以保证先进来的任务先得到执行(但不保证一定先执行结束)。 通过与线程池的配合,dispatch queue分为下面两种: Se转载 2013-10-28 23:19:32 · 1049 阅读 · 0 评论 -
iOS编程中——id数据类型
iOS编程中经常见到的:id 数据类型id类型声明没有 * 号,是动态数据类型,可以指向任何类的对象,而不关心距离类型。编译阶段不做类型检查,运行阶段检查具体类型,优点:灵活,可以指向任何数据类型;编译阶段不指向任何类型。缺点:可读性不高,编译器无法发现语法错误。原创 2013-10-23 20:58:38 · 3641 阅读 · 0 评论 -
Hello
哈哈原创 2013-10-11 16:31:45 · 856 阅读 · 0 评论 -
iOS调试Bug方式之——NSZombieEnabled(僵尸模式)
NSZombieEnabled变量用来调试与内存有关的问题,跟踪对象的释放过程。启用了NSZombieEnabled的话,它会用一个僵尸来替换默认的dealloc实现,也就是在引用计数降到0时,该僵尸实现会将该对象转换成僵尸对象。僵尸对象的作用是在你向它发送消息时,它会显示一段日志并自动跳入调试器。 所以,当在应用中启用NSZombie而不是让应用直接崩溃掉时,一个错误的内存原创 2013-10-30 16:42:36 · 7493 阅读 · 0 评论 -
iOS编程——CGAffineTransform相关函数
CGAffineTransform rotation = CGAffineTransformMakeRotation(M_PI_2); [xxx setTransform:rotation]; CGAffineTransformRotate(transform, M_PI);是旋转的。 CGAffineTransformMakeRotation(-M_PI);也是旋转的 transform = CG原创 2015-11-12 12:51:26 · 728 阅读 · 0 评论