- 浏览: 87331 次
- 性别:
- 来自: 北京
最新评论
文章列表
在显示等待框时,一般要求在提示信息后面加个省略号,但中文输入法下输入的省略号是在底部对齐,但中
文的习惯是省略号垂直居中对齐,最后找到下面这个方法来显示垂直居中的省略号:
中文和英文输入法下一样:
option + shift + 9。输出的是一个垂直居中的点,多输入就个这个点就可以模拟垂直居中的省略号了,效果如下:
······
开发中一个详情界面的内容非常多,在从列表页进入详情界面时,在列表界面停顿很长时间后才进入详情界面。原因就是详情界面的初始化放在了viewDidLoad中,而在此时间内,会一直停在列表界面,用户的使用感受很不好。解决方案:1、在viewDidLoad中显法一个加载界面,
2、将界面初始化放在viewDidAppear中。
这样,用户就不会在从列表界面进入详情界面时界面时,等很长时间了。
@interface DetailVC :UIViewController
{
BOOL _isAppear;
UIView* _loadingView;
}
...
1、Targets->Build Settings->Compress PNG Files选项选中后,xcode在打包时, 会同时改变图片的格式,并压缩图片。2、如果Compress PNG Filest == YES,则经压图软件压过的图在xcode处理后,反而会变大。所以要压缩ipa包的大小,需要作两点。1、Compress PNG Filest设为NO。2、全部或绝大部分图要用压图软件手动压缩。 我开始的思路是只对太大的图压缩,小的图就不压缩了,以保证显示质量。 但实妹证明这么作是不行的: 1、如果Compress PNG Filest设为NO, 则 ...
APN push的消息到达后,UIApplicationDelegate有两个方法和处理消息有关:
application:didReceiveRemoteNotification:
application:didFinishLaunchingWithOptions:
下面的流程图显示了app在处理推送消息的一个流程。
测试推送的流程时,有两个难题:
推送需要服务端配合,搭建整个远程
用友通启动失败,报连接不到服务。查了半天,还是万能的google帮了我,原来是用友通服务的运行文件:C:\WINDOWS\system32\serverNT.exe被360杀毒给误杀了,导致启动时找不到服务。
解决办法很简单:
1、进入360杀毒的隔离区,将serverNt.exe减除隔离。
2、在命令行中执行:serverNT /install /silent。就是带参数执行serverNT这个可执行文件。install参数指定serverNT把自己安装为系统服务。因为serverNT.exe在system32目录下,在系统的搜索目录中,所以不用带路径。执行完后没有任何输出。
...
启动Mac上的Network Link Conditioner后,将网速设慢,如果在虚拟机上调试时,则xCode的调试会非常慢。
在调试联网线程时,调试器还有可能挂掉。最后只能在iOS5的真机上,用真机上的Network Link Conditioner来模拟慢网络,则没有问题。所以怀疑xCode和虚拟机通讯是通过Net来通讯的。
在iOS5之前,将view controller的view加入到另一个vc的view中时,如下[parent_vc.view addSubview:sub_vc.view];
sub_vc的view appear,disappear等方法是不会被调用的。
在iOS5之后view controller内部,增加了一个属性:childViewControllers。
调用addChildViewController,就是把sub vc 加入到childViewControllers,这样,parent vc发生view appear,dispappear事件时,就轮循childViewContro ...
最近iPad的应用适配iOS6,发现iOS6带的地图特别费内存。在iOS5下,用google地图时,内存只有6M。在iOS6下,用apple地图时,内存飙升到了60多M。同时测了retain和非retain时的差别,发现内存消耗的差距是一样的。看了地图的效果后,推测是google的地图是矢量图,而apple的地图是位图,从而导致了内存的巨大消耗。
UIViewAutoresizingNone = 0,
UIViewAutoresizingFlexibleLeftMargin = 1 << 0,
UIViewAutoresizingFlexibleWidth = 1 << 1,
UIViewAutoresizingFlexibleRightMargin = 1 << 2,
UIViewAutoresizingFlexibleTopMargin = 1 << 3,
UIViewAutoresizin ...
Three20提供了一个Python脚本:ttmodule.py。只要执行此脚本就可以完成three20对现有xcode工程的支持。 假如当前目录结构如下:
|--three20
|--test
|--test.xcodeproj
其中three20目录内包含three20的所有源代码。test是测试用xcod ...
convertPoint本身并不难理解,但是下面的这些特殊情况一定要注意,经过测试,总结如下:
UIView* fromView = [[UIView alloc] init];
[fromView convertPoint:aPoint toView:toView];
就是将fromView坐标系中的一个点转换为toView中的一个点。
这时需要注意:
1、如fromView是nil,则返回CGrectZero。
这种情况发生在view的init方法中; [self.superView convertPoint:aPoint toView:toView];
此时的self.su ...
网上查到的方法都很古老了。还是抄来抄去,还是google英文靠谱啊。
下面是我的总结。
查找EXC_BAD_ACCESS的错误代码处:
1、选XCode主菜单的Product/Profile .会运行Instrument工具。
2、选择弹出窗口的Memory的Zombies工具。则释放对象时,会通过代理对象。这样就会记录对空对象的释放了。
3、在虚拟机中操作程序到出错的地方。会弹出下面的框。点击at address 0x5b74050 后面的右箭头。
4、在下面出现了程序调用的列表,点击最上面一行。
5、弹出不被错误释放的对象。大功告成。
6、如果要看调用堆栈,则点击Instrument下面 ...
在网上找了半天,不得被中文的内容花园折服了。全都是互相抄的早已过时的文章,除了浪费时间没有一点益处,还是得以英文关键字在google上查靠谱。
下面都是本人实际验证过的办法。版权属于gypgyp,转发请注明出处!^-^。
虚拟机录屏工具是开源的工具:iPhone Simulator Capture!但是这个开源项目已经停止开发了。
现在不支持XCode4带的iOS5的虚拟机。
不过从iPhone Simulator Capture分枝的semnil iPhone Simulator Capture 开源项目支持
iOS5的虚拟机。
安装时注意:
1、安装SIMBL。
...
监控iPhone应用的HTTP请求
- 博客分类:
- iphone
监控iPhone的HTTP请求。
测试环境:
Mac:Lion 10.7.2
iPhone: IOS 4.2
Paros:3.2.13
一、Paros相关
Paros是一个垮平台的开源代理软件。
1)安装JAVA
Paros是基于JAVA的,安装Paros前必须先安装JDK。
从Lion开始系统不预装Java。需要自己装。
而且Apple专门定作了Lion版的JDK.
从下面的网站下载Lion版JDK:
http://support.apple.com/kb/DL1421?viewlocale=zh ...
悲剧了。今天提交的APP被拒了。原因是“Apps that are primarily marketing materials or advertisements will be rejected“。而这个应用以前是通过的,这次是换了个帐号重发。还建议此类应用以后用HTML5来作。
Apps that are primarily marketing materials or advertisements will be rejected
Dec 9, 2011 06:57 PM. From Apple.
2.13
We found that your app provides a li ...