设置 NSZombieEnabled 定位 EXC_BAD_ACCESS 错误

我们做 iOS 程序开发时经常用遇到 EXC_BAD_ACCESS 错误导致 Crash,出现这种错误时一般 Xcode 不会给我们太多的信息来定位错误来源,只是在应用 Delegate 上留下像 Thread 1: Program received signal: "EXC_BAD_ACCESS",让问题无从找起。

比如你对已释放的对象发送消息时就会出现,EXC_BAD_ACCESS,再如 release 的对象再 release,release 那些 autorelease 的对象等也会报这样的错。默认设置下 Xcode 不会给你定位具体是哪一行代码,不该去使用已释放的对象,或者 release 用错了。

比如 UIViewController 子类中这样的代码: 阅读全文 >>

类别: iOS. 标签: , . 阅读(2,770). 评论(1) »

让 Xcode 4 自动补全 []、 ""、 ''、 () 的插件

我现在所使用 Xcode 4 Beta 5 尚不支持对  []、 ""、 ''、 () 的自动补全,本插件是由 CocoaChina 版主 “yoyokko” 制作的 Xcode Plugin Plus for Xcode 4 可以帮您实现 Xcode 4 对 []、 ""、 ''、 () 符号的自动补全。

例如输入左中括号,自动补全右中括号,并且光标停在括号中间,在删除左中括号时,右中括号也自动删除。对双引号,单引号,圆括号也是一样的。大括号在 Xcode 中已能自动处理,输入一个左大括号,回车后就会补全右大括号。

本插件的安装方法如下:

1. 安装 SIMBL(SIMBL is the SIMple Bundle Loader),在  http://www.culater.net/software/SIMBL/SIMBL.php 下载 SIMBL-0.9.9.zip (Snow Leopard and Leopard),Lion 系统也可以用这个版本 阅读全文 >>

类别: iOS. 标签: , . 阅读(1,307). 评论(0) »

UIView.clipsToBounds 让子 View 只显示落在父 View 的 Frame 部分

默认情况下,我们向一个 View 中添加一个子 View 时,子 View 的越界部分也会显示出来,当然超过屏幕部分是显示不出来,因为无法在你手上显示内容了。看下面的图:

Unmi clipseToBounds     Unmi clipseToBounds

上图中,橙色的 View 是蓝色 View 的子 View。看左图,由它们的 Frame 设置,橙色的 View 部分超出的蓝色 View 的区域,默认情况下,蓝色 View 超出部分也会显示出来,除非在屏幕之外的部分。 阅读全文 >>

类别: iOS. 标签: , . 阅读(6,583). 评论(0) »

UIView 动画的两种编程方式

iOS  中的 UIView 动画编程其实还是很简单的,像 CSS3 一样,在给定的时间内完成状态连续性的变化呈现。比如背景色,Frame 大小,位移、翻转,特明度等。

以前我使用的编程方式都是用下面那样的三段式处理:

那么被 beginAnimations 和  commitAnimations 框起来的代码就会让你产生动画效果,这种方式像是数据库中的事物编程一样。 阅读全文 >>

类别: iOS. 标签: , , . 阅读(1,563). 评论(0) »

UIView你知道多少

      曾经有人这么说过,在iphone里你看到的,摸到的,都是UIView,所以UIView在iphone开发里具有非常重要的作用。那么UIView我们到底知道多少呢。请看看下面的问题,
如果这些你都知道,那么本文章的内容就请绕道,如果你还不太清楚,我想看了下面的内容,你就明白了。
1。bounds和frame分别表示什么?
2。ContentMode里UIViewContentModeScaleToFill代表什么?
3。contentStretch 里的指定UIView里缩放区域是如何计算的?
4。UIVIew里的哪些属性变化可以用动画来呈现?
5。UIKit的坐标系和Core Graphics的坐标系的差别是什么?

     视图和窗口展示了应用的用户界面,同时负责界面的交互。UIKit和其他系统框架提供了很多视图,你可以就地使用而几乎不需要修改。当你需要展示的内容与标准视图允许的有很大的差别时,你也可以定义自己的视图。 阅读全文 >>

类别: iOS. 标签: , . 阅读(1,166). 评论(0) »

几个 CGRect 函数例子

 CocoaChina 会员“”分享的几个 CGRect 函数例子,希望对您的苹果开发有所帮助

1.CGRectOffset使用从源CGRect偏移的原点来创建矩形

    float offset = 25.0;
    CGRect r1 = CGRectMake(100, 100, 100, 100);
    CGRect r2 = CGRectOffset(r1, offset, offset);

2.CGRectIntersectsRect允许我们确定两个矩形是否相交

    float offset = 25.0;
    CGRect r1 = CGRectMake(100, 100, 100, 100);
    CGRect r2 = CGRectMake(150, 150, 100, 100);
    if (CGRectIntersectsRect(r1, r2)) 阅读全文 >>

类别: iOS. 标签: , . 阅读(742). 评论(0) »

WordPress 3.2.1 不能保存 Widget 设置

WordPress 升级到 3.2.1 之后,反正有好长一段时间是不能在 Widgets 中,如左边栏或右边栏中增加 Widget 了。因为现在的工作与 WordPress 本身相去较远些,所以未能修改 Widget 几个月了也没去钻研是怎么回事。现象呢就是:既不能增加新的 Widget,也无法移除原有的 Widget,移动位置也是不行的。界面上是允许操作的,在你操作完后,保存完,页面一刷新又变成原样,就是说服务器无法保存你对 Widget 所做的修改,好像只一点是例如,仅仅可以更改已有 Widget 的标题。

想来 WordPress 3.2.1 肯定不会出现这样的低有错误的,必定是哪理冲突了。Google 后找到一篇类似问题的贴子 Can't edit and save saidebar widgets with WordPress 3.2.1,其中有介绍可能是哪个插件或主题引起的问题,有建议说把所有插件关了又启用,看问题是否依然,或使用默认主题看是否无问题。耐心的去试,总能查到罪魁祸首的。 阅读全文 >>

类别: WordPress. 标签: , , . 阅读(192). 评论(0) »

UIScrollView 的基本用法

iPhone/iPad 中 UIScrollView 还是经常要用到的,这里作了一个使用它最简单的例子,一个 ScrollView 中放了三个 UIView。这三个 UIView 分别设置了不同的背景色,它们在 ScrollView 中可以一页一页的滚动。

这段代码放在 UIViewController 的 viewDidLoad 方法中执行的,请注意每个 Frame 和 ScrollView 的关键属性,如 contentSize。ScrollView 中按页滚动时每次走动一个 ScrollView 的宽度(横向时) 或高度(纵向时)。看下面两张图:

   

第一张图是 阅读全文 >>

类别: iOS. 标签: , , . 阅读(9,031). 评论(0) »