一、介绍有的博友看了上篇博文 iOS界面-仿网易新闻左侧抽屉式交互 ,在微博里问,网易新闻里的内容和评论的拖拽如何实现,上面的UINavigation如何嵌进去。可能很多人有这样的需求,如今花了些时间把这两个效果作一下,和你们分享交流。思路和上篇基本差很少,可是没有用到UINavigation,其实在我看来上面的返回、评论按钮都是能够经过addsubview添加的。内容页和评论页的手势交互 实现的...html
一、介绍 用过网易新闻客户端的同窗都会发现,网易新闻向左滑动时,左侧的导航栏会跟着拖动出来,新闻内容列表会拉到最右侧。像一个抽屉拉出来同样。很酷。除了网易新闻,如今好多应用都采用了这样的交互。对手势识别不熟悉的请参考上篇: iOS手势识别的详细使用(拖动,缩放,旋转,点击,手势依赖,自定义手势)这个交互效果主要用到两个手势,一个是pan拖拽,一个是tap点击。拖拽能够把抽屉拉出来,再推回去。...java
一、UIGestureRecognizer介绍 手势识别在iOS上很是重要,手势操做移动设备的重要特征,极大的增长了移动设备使用便捷性。iOS系统在3.2之后,为方便开发这使用一些经常使用的手势,提供了UIGestureRecognizer类。手势识别UIGestureRecognizer类是个抽象类,下面的子类是具体的手势,开发这能够直接使用这些手势识别。UITapGestureRecognizer...ios
前面介绍了Core Animation基础知识,还有CALayer的简单使用,最终仍是有要动画的滴,这里列出几个动画效果,参考下能加深对Core Animation的认识和理解一、把图片移到右下角变小透明使用CAAnimationGroup叠加动画效果,就是下面按钮《把图片移到右下角变小透明》描述的效果: 、上面三个图是动画的三个状态,实现代码以下:- (void)viewDidLoad...编程
上篇Core Animation之基础介绍提到CALayer的重要性,那我们就试试CALayer如何使用。一、什么是CALayerCALayer是个简单的类,它是用来在屏幕上显示内容展现的矩形区域。 靠,这是不描述UIView的话吗?其实他们是有区别的。每一个UIView都有一个根CALayer,UIView在这个layer上描绘东西。那怎么访问这个layer呢,很简单:CALayer *myLay...api
Core Animation能够翻译为核心动画,它为图形渲染和动画提供了基础。使用核心动画,你只须要设置一些参数好比起点和终点,剩下的帧核心动画为你自动完成。核心动画使用硬件加速,不用消耗cpu资源。其实平时我们开发的iOS应用都在有意无心的使用了核心动画。动画不会替代View,而是和View一块儿提供更好的性能。Core Animation经过缓存view上的内容到bitmap,这样bitmap就...xcode
动画效果提供了状态或页面转换时流畅的用户体验,在iOS系统中,我们不须要本身编写绘制动画的代码,Core Animation提供了丰富的api来实现你须要的动画效果。 UIKit只用UIView来展现动画,动画支持UIView下面的这些属性改变:frame bounds center transform alpha backgroundColor contentStretch一、co...缓存
单例模式在iOS开发过程当中常常用到,苹果提供过objective c单例的比较官方的写法:static MyGizmoClass *sharedGizmoManager = nil; + (MyGizmoClass*)sharedManager { @synchronized(self) { if (sharedGizmoManager == nil) {...网络
虽然iOS 5.0版本以后加入了ARC机制,因为相互引用关系比较复杂时,内存泄露仍是可能存在。因此了解原理很重要。这里讲述在没有ARC的状况下,如何使用Instruments来查找程序中的内存泄露,以及NSZombieEnabled设置的使用。本文假设你已经比较熟悉Obj-C的内存管理机制。实验的开发环境:XCode 4.5.2一、运行Demo。先下载一个实现准备好的内存泄露的Demo吧:leak...多线程
接上一篇 Cocoa 框架总结For iOS(一) ,继续总结Cocoa对象一、Cocoa对象的建立咱们都知道建立一个对象有两步:alloc 和 init(对象分配和初始化),两步缺一不可。初始化通常都是紧接着对象分配的后面进行,可是这两个操做的做用是彻底不一样的。分配对象:就是Cocoa从应用程序的虚拟内存中为对象分配一块内存。Cocoa会根据对象的实例变量(类型和变量的排列顺序)计算内存大小...app
Cocoa框架是iOS应用程序的基础,了解Cocoa框架,对开发iOS应用有很大的帮助。一、Cocoa是什么?Cocoa是OS X和 iOS操做系统的程序的运行环境。是什么因素使一个程序成为Cocoa程序呢?不是编程语言,由于在Cocoa开发中你可使用各类语言;也不是开发工具,你能够在命令行上就能够建立Cocoa程序。Cocoa程序能够这么说,它是由一些对象组成,而这些对象的类最后都是继承于它们...
iOS的应用程序的生命周期,还有程序是运行在前台仍是后台,应用程序各个状态的变换,这些对于开发者来讲都是很重要的。 iOS系统的资源是有限的,应用程序在前台和在后台的状态是不同的。在后台时,程序会受到系统的不少限制,这样能够提升电池的使用和用户体验。//开发app,咱们要遵循apple公司的一些指导原则,原则以下:一、应用程序的状态状态以下:Not running 未运行 程序没启动Inac...
介绍:Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其余的对称多处理系统的系统。这创建在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X 10.6 ,iOS 4及以上也可用。设计:GCD的工做原理是:让程序平行排队的特定任务,根据可用的处理资源,安排他们在任何可用的处理器核心上执行任务。一个任务能够是一个函数(f...
前一篇 《iOS多线程编程之NSThread的使用》介绍三种多线程编程和NSThread的使用,这篇介绍NSOperation的使用。使用 NSOperation的方式有两种,一种是用定义好的两个子类:NSInvocationOperation 和 NSBlockOperation。另外一种是继承NSOperation若是你也熟悉Java,NSOperation就和java.lang.Runnabl...
一、简介:1.1 iOS有三种多线程编程的技术,分别是:1.、NSThread 二、Cocoa NSOperation (iOS多线程编程之NSOperation和NSOperationQueue的使用)三、GCD 全称:Grand Central Dispatch( iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用)这三种编程方式从上到下,抽象度层次是从低到高...