IOS
文章平均质量分 54
gdyer
这个作者很懒,什么都没留下…
展开
-
NSNotificationCenter消息注册与撤销
苹果的消息机制是个非常好用的东西,当需要在类的各个实例之间传递消息或者写一些事件驱动的程序时,绝对是个不错的工具。但是使用时一不小心就会造成引用已经被dealloc的对象的错误,引起程序崩溃。于是,在合适的时机addobserver和removeobserver就是个很关键的事情。下面,分几种情况来阐述一下自己的一点想法。一,使用defaultcenter。简单的情况下,若自己没有转载 2012-04-10 21:35:09 · 400 阅读 · 0 评论 -
Objective-c的@property 详解
之前很多网友对我翻译的教程中的Property的使用感到有些迷惑不解,搞不清楚什么时候要release,什么时候要self.xxx = nil;同时对于Objective-c的内存管理以及cocos2d的内存管理规则不够清楚。本文主要讲解objc里面@property,它是什么,它有什么用,atomic,nonatomic,readonly,readwrite,assign,retain,copy转载 2012-04-18 23:41:39 · 275 阅读 · 0 评论 -
Windows phone 7之样式与模板
就像网页配合CSS一样,XAML元素结合Style可以使Silverlight页面变得绚丽多彩。Silverlight的最大吸引力就是无论你想做什么格式的,什么效果的页面你都可以实现,绝对没有不可能。想使页面变得绚丽,简单Style就可以,想使页面变得特性十足或是千变万化,那就学好模板,想要使页面动起来,Storyboard可以帮助你。样式(Style)、模板(Template)很少直接定转载 2012-04-17 19:23:32 · 328 阅读 · 0 评论 -
iPhone 项目使用静态库(xcode使用)
由于Apple禁止在iPhone中使用外部框架或动态链接库,所以要重用代码(第三方库或自己的代码)只能选择如下方法:直接将代码加入项目。这种方法有点笨。例如,你的一段代码被五个项目共享,如果你发现一个小bug,那么你需要更改五个地方。够麻烦吧?使用静态库。这是我经常使用的方法。但Xcode并未为iPhone提供静态库的模板。有两种解决方法: 如果你的项目主要是使转载 2012-04-17 19:22:50 · 474 阅读 · 0 评论 -
如何保持iOS上键盘出现时输入框不被覆盖
在iOS5上请求显示键盘时,系统从屏幕底部将键盘滑入上来,位于应用的内容之上。如果屏幕中的内容项目比较多,它就可能覆盖住文本输入框之类的对象。你必须调整你的内容,使得输入框保持可见。你会想到哪些处理方法呢?第一种,临时调整窗口中各个视图的大小,使得键盘从下向上占领的区域空白。键盘的高度(keyboard.size.height)是一定的,将视图中所有内容所在区域的y转载 2012-04-17 19:21:19 · 417 阅读 · 0 评论 -
iphone UIScrollView详解(转)
scroll view 原理 在滚动过程当中,其实是在修改原点坐标。当手指触摸后, scroll view会暂时拦截触摸事件,使用一个计时器。假如在计时器到点后没有发生手指移动事件,那么 scroll view 发送tracking events 到被点击的 subview。假如在计时器到点前发生了移动事件,那么scroll view 取消 tracking 自己转载 2012-04-15 22:27:08 · 277 阅读 · 0 评论 -
iOS开发常用的开源库和示例
MBProgressHUD ——进展指示符库苹果的应用程序一般都会用一种优雅的,半透明的进度显示效果,不过这个API是不公开的,因此你要是用了,很可能被清除出AppStore。而 MBProgressHUD提供了一个替代方案,而且在用户角度上,实现的效果根本看不出和官方程序有什么差别。同时还提供了其他附加功能,比如虚拟进展 指示符,以及完成提示信息。整合到项目里也很容易,这里不细谈了。转载 2012-04-15 22:26:40 · 416 阅读 · 0 评论 -
iPhone程序包结构
当build iPhone程序时,Xcode会将它打成一个包。这个包是文件系统下的一个目录用于将相关资源放到一起。一个iPhone程序包包括可执行程序和程序使用的各种资源(例如程序图标、其他图片和本地化资源等)。下面我们逐个看一下iPhone程序包里到底有什么? MyApp 盛放程序代码的可执行文件。此文件的名称与工程的名称相同。这个文件是必须的。 Settings.bundl转载 2012-04-14 22:57:01 · 247 阅读 · 0 评论 -
在iOS开发中告别未定义selector
objc和C++同为由C语言衍生出的OOP语言,但他们实现OOP的方式并不相同:在C++中,对象与方法在编译器绑定;而在objc中,称“方法”一词为“消息”,在程序运行时向对象发送消息,即运行期绑定。 两种方式各有优劣,C++注重性能,objc注重灵活。 然而运行期绑定给开发带来问题——编程时拼写错了方法名,编译器并不报错。笔者曾debug一小时,最后发现是方法转载 2012-04-13 21:28:05 · 351 阅读 · 0 评论 -
UINavigationController修改默认的动画
系统默认的NavigationController还不错,但是时间长了会有审美疲劳,今天在网上找了找资料,改变默认的动画效果。 1.添加QuartzCore并引入头文件 #import 2. PushView 的动画修改 CATransition *transition = [CATransition animation];转载 2012-04-13 21:26:28 · 259 阅读 · 0 评论 -
怎样判断ios app 第一次启动
我已经看到这个问题很多次了。今天抽空研究了一下 首次运行的应用程序加入一些help 或者 宣传动画 现在变的很重要了。 一个有用的例子是发送一个分析实例。这可能是一个很好的方法来确定有多少人下载实用应用程序。有人会说:“但是,嘿,苹果AppStore已经告诉我,应用程序的下载量了”。 流行的解决方案是在大多数地方是用[NSUserDefaults standardUserDefault转载 2012-04-14 22:56:27 · 376 阅读 · 0 评论 -
我的开发笔记---UISegmentedControl的详细使用
当用户输入不仅仅是布尔值时,可使用分段控件(UISegmentedControl)。分段控件提供一栏按钮(有时称为按钮栏),但只能激活其中一个按钮。分段控件会导致用户在屏幕上看到的内容发生变化。它们常用于在不同类别的信息之间选择,或在不同的应用屏幕之间切换。下面介绍基本属性和基本方法的使用。NSArray *segmentedArray = [[NSArrayalloc]initWithO转载 2012-04-12 20:28:51 · 387 阅读 · 0 评论 -
Objective-C中一种消息处理方法performSelector: withObject:
Objective-C中调用函数的方法是“消息传递”,这个和普通的函数调用的区别是,你可以随时对一个对象传递任何消息,而不需要在编译的时候声明这些方法。所以Objective-C可以在runtime的时候传递人和消息。 首先介绍两个方法 SEL和@selector根据AppleObjective-C Runtime Reference官方文档这个传递消息的函数就是 id o转载 2012-04-12 20:28:02 · 170 阅读 · 0 评论 -
记录Objective-C里SEL和Selector的用法
Objective-C中调用函数的方法是“消息传递”,这个和普通的函数调用的区别是,你可以随时对一个对象传递任何消息,而不需要在编译的时候声明这些方法。所以Objective-C可以在runtime的时候传递人和消息。 首先介绍两个方法 SEL和@selector根据AppleObjective-C Runtime Reference官方文档这个传递消息的函数就是 id o转载 2012-04-11 23:38:14 · 351 阅读 · 0 评论 -
ios局域网联机——苹果官方源码之WiTap剖析
在过去的时间里,我一直在考虑的事情是,我该写一篇什么样的文章呢?之前的两篇文章都是先有问题,然后我才有目的的解决问题,现在我的困扰是,我不知道该写什么了呵呵。因为其实,大多数的问题,只要在网上搜索一下(google远比baidu要强得多),基本上都能找到解决的办法,已经有了许多相关方面的教程或参考资料了,我并不是一个喜欢重复做别人已经做得很好的工作的人,所以我现在需要你的帮助,如果你有好的关于写什转载 2012-04-11 23:39:35 · 648 阅读 · 0 评论 -
IOS多线程读写Sqlite问题解决
现在ios里使用的数据库一般都是Sqlite,但是使用Sqlite有个不太好的地方就是在多线程的时候,会出现问题,sqlite只能打开一个读或者写连结。这样的话多线程就会碰到资源占用的问题。 最开始是使用FMDB,FMDB的早期版本不能解决这个问题,后来FMDB更新了,新版本的FMDB能够很好的解决这个多线程使用Sqlite 。FMDB github网址 https://转载 2012-04-10 21:34:36 · 366 阅读 · 0 评论 -
IOS中二维坐标变换
1.坐标变换的数学基础 1.1 坐标系 数学中我们使用的是笛卡儿坐标系,如下图所示: X轴正方向向右,Y轴正方向向上,原点O,坐标点A(x,y)。 1.2 仿射变换 已知坐标点A,变换后新坐标系中坐标为B ,则有转载 2012-04-18 23:42:25 · 502 阅读 · 0 评论