ios
andyweike
不怕路太远找不到终点,就怕两个世界画不成一个圆。(本博客的目的主要是方便自己查看,不免内容结构随意,博友可选择参考)
展开
-
《程序员读》ios版本已隆重登陆AppStore
《程序员读》ios版本已隆重登陆AppStore原创 2010-03-14 14:49:00 · 812 阅读 · 0 评论 -
UITableView,UITableViewCell,UIPickerView,UISearchBar
1.UITableView 去掉分隔线,背景: 去掉分隔线: tableView.separatorStyle=UITableViewCellSeparatorStyleNone; //在syle为UITableViewStylePlain有效,隐藏了分隔线,但在UITableViewStyle为UITableViewStyleGrouped时不起作用. 或者用tabl原创 2011-01-12 15:20:00 · 7173 阅读 · 0 评论 -
音频,视频
1.AVAudioPlayer,它用来播放本地文件或内存中的数据,异步播放,应该是在另一个线程中播放的。 内置休眠功能不会影响音频播放:[NSThread sleepUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1f]]; 只要将 AVAudioPlayer 的 numberOfLoops 属性设为负数,音频文件就会一直循环播原创 2011-06-28 23:29:00 · 1504 阅读 · 0 评论 -
语法,学习资源
1.Objective-C是扩充C的面向对象编程语言,简写为ObjC或Obj-C。 #import 相当于 C/C++ 语言中的 #include #pragma once Objective-C 中函数缺省的就是 virtual 的。 继承的时候没有限定符,继承都是 public 的。 @interface中成员变量缺省是@protected,而函数是 public 的。 O原创 2010-11-14 00:11:00 · 2869 阅读 · 0 评论 -
UINavigationController,UINavigationBar
1.UINavigationController是用于构建分层应用程序的主要工具,它维护了一个视图控制器栈,任何类型的视图控制器都可以放入. 它在管理,以及换入和换出多个内容视图方面,与UITabBarController(标签控制器)类似. 两者间的主要不同在于: UINavigationController是作为栈来实现,它更适合用于处理分层数据. 它还有一个作用是用作顶部菜单。原创 2010-12-07 15:12:00 · 14506 阅读 · 0 评论 -
UIScrollView
1.Strangely enough you can not set the contentSize property of the UIScrollView from Interface Builder. You will have to do it from the view controller managing this scroll view.选中界面中的一些控件,点击菜单 Layo原创 2011-05-18 23:17:00 · 2519 阅读 · 2 评论 -
UIToolBar,UIBarButtonItem
1.工具栏UIToolBar管理了一组UIBarButtonItem, UIBarButtonItem不能随意摆放在屏幕上,它不是继承自UIView。它由导航栏,标签栏或工具栏管理。 栏按钮条目UIBarButtonItem存储工具栏和导航栏的按钮的属性,它本身不是按钮。 UIBarButtonItem Class Referencehttps:原创 2010-12-15 12:17:00 · 5844 阅读 · 0 评论 -
.plist
1.Icon already includes gloss effects :当提供的icon已经做了圆角及高光处理时,勾选上这一项。 在Resouces目录中提供57x57像素的png图片作为应用程序的图标,iphone会自动圆角化图片。然后在同目录下的info.plist文件中修改icon file行的值为图片的名字。 iPad中使用72x72的桌面图标,详见http://ww原创 2010-12-04 19:01:00 · 1675 阅读 · 0 评论 -
错误,调试
有些也写在了开发工具/xcode中 http://article.ityran.com/archives/1143 1. 编译iPad真机时,选择了 Architetures:Standard(armv6) BaseSDK:iPhoneDevice3.2 TargetDeviceFamily:iPad.若编译出现如下错误:Command /Developer/Platfor原创 2011-03-06 21:01:00 · 12493 阅读 · 1 评论 -
越狱
1.补丁AppSync同步补丁,是为了使越狱的iphone能通过itunes同步安装破解的或未加密的ipa软件。ipa补丁,是为了使越狱的iphone能通过itunes同步安装未破解的ipa软件。自己打包出来的ipa软件,是没有经过苹果加密的。从appstore上下载下来的软件,免费的和不免费的都是经过了苹果加密处理的。只供下载者安装使用的。所以,在AppStore之外共享软件原创 2011-06-21 14:17:00 · 1090 阅读 · 0 评论 -
UIImageView,UIImage,CGContextRef
1.UIImageView不支持内部图片平铺(tile) UIImageView类充分去绘制它的图片,不去调用drawRect.要想自绘,必须继承UIView.The UIImageView class is optimized to draw its images to the display. UIImageView will not call drawRect: a subclas原创 2011-03-07 23:53:00 · 6680 阅读 · 0 评论 -
网络
NSURLConnection同步,异步与SSL http://qzc770707.blog.163.com/blog/static/3408275320105249566560/通常在iPhone里用NSURLConnection做url请求1.NSURLConnection同步与异步请求(1)异步请求:NSMutableData* buf = [[NSMuta原创 2011-05-25 17:13:00 · 5256 阅读 · 0 评论 -
iDP
在苹果网站上注册APPLE ID是免费的,购买iPhone Develop Program(iDP)开发者授权是收费的.iDP:iPhone Develop Program ,iphone开发者. 使用Apple ID及密码登录:http://developer.apple.com/iphone/manage/certificates/team/index.action增加注册原创 2011-03-29 16:05:00 · 4021 阅读 · 3 评论 -
NSDate,NSDateFormatter,NSLocale
1.static NSString* const KDateFormat=@"MM-dd-yyyy"; NSString* dateStr=@"8-1-2000"; NSDateFormatter* dateFormat=[[NSDateFormatter alloc] init]; dateFormat.dateFormat=KDateFormat;原创 2012-02-08 15:22:56 · 4115 阅读 · 0 评论 -
内存管理,ARC
http://www.yifeiyang.net/development-of-the-iphone-simply-3/1. 实例变量的循环引用有两种: 强引用,retain 弱引用,assign,要保证对象在引用期内,不能被其它的引用释放. 2. Core Foundation's memory allocation policy is that原创 2010-12-02 15:42:00 · 2311 阅读 · 0 评论 -
iphone静态库
1.Apple禁止在iPhone中使用外部框架或动态链接库,要重用代码最好使用静态库.a了. 2.在项目中链接静态库:把头文件拷贝到工程内或指定位置,在Head Search Paths中指定静态库的头文件路径,如 lib/header/,选择上递归属性.把.a添加到工程中. 3.将库工程包含到应用工程中.http://www.cocoachina.com/iphone原创 2011-04-21 15:21:00 · 1524 阅读 · 0 评论 -
UIWebView,移动web
1.只有使用loadRequest:加载网页,才能对之后的链接操作做goBack,goForward操作,即canGoBack,canGoForward才有可能返回YES. 使用loadHTMLString,loadData都不可以. 并且在load之后通过stringByEvaluatingJavaScriptFromString对网页增加的内容,在 NSString* ou原创 2010-12-15 11:39:00 · 9947 阅读 · 0 评论 -
数据持久,数据共享
1.三种高级数据持久方式:属性列表,对象归档,嵌入式关系数据库SQLite3.2.应用程序的沙盒: 每个应用程序都有自己的Documents文件夹,并且仅能读取各自的Documents目录中的内容. /Library/Application Surpport/iPhone Simulator/3.1.2/Applications/目录下有Xcode生成的一些随机名字的文件夹,原创 2010-12-07 09:17:00 · 1384 阅读 · 0 评论 -
UIView
1.subviews管理: 移除一个 UIView 的所有子视图,SDK 里没有 remove all 之类的方法。使用for 循环调用 – removeFromSuperview 来移除: for(UIView *view in [self.view subviews]){ [view removefromsuperview]} 其它一些subview操作函数:inse原创 2011-03-29 10:24:00 · 6377 阅读 · 0 评论 -
UITextField,UITextView ,UILabel,键盘,UIFont
1.UITextView 也称作智能标签。(1). -[UITextView setContentToHTMLString:] 可以设置html内容,但是这是个私有api的函数。 显示大段文本首选UITextView,不是UILabel。 (2).通过设置inputAccessoryView,增加一行工具栏来关闭键盘{ UIToolbar* inputAcc原创 2011-09-03 23:56:31 · 6269 阅读 · 0 评论 -
CALayer,动画
1.CALayer是低级组件,像是铺在一个内容固定对象上的一个片,非常灵活的支持在一个对象上显示内容,可在屏幕上弯曲或扭曲内容。 在MVC设计模式中,视图是V对象,层是M对象。层封装了布局,时序,可视的属性并且提供用于显示的内容,但是显示却不是层的职责。 每个UIView都有一个根层,它控制着内容最终被显示在屏幕上的方式。 单个层可以有很多子层。子层可以在最终屏幕原创 2011-04-13 12:18:00 · 7721 阅读 · 0 评论 -
UIAlertView,UIActionSheet, UIMenuController
1.>4.7实现按钮,操作表,警报.2。UIAlertView示例UIAlertView* alert=[[UIAlertView alloc] initWithTitle:@"title" message:@"message" delegate:nil cancelButtonTitle:@"cancel" otherButtonTitles:@"other原创 2010-12-07 17:00:00 · 3227 阅读 · 0 评论 -
StatusBar,状态栏 ,UIWindow
1. 实现状态栏点击 使用在Apple的View Programming Guide for iOS文档里提到的更改Window Level这个技巧。typedef CGFloat UIWindowLevel;const UIWindowLevel UIWindowLevelNormal; // 0.0const UIWindowLevel UIWindowLevelAl原创 2011-11-28 12:44:12 · 9872 阅读 · 0 评论 -
NSDictionary,NSArray,NSPredicate,JSON
1.NSDictionary 是一种hash表, 是乱序的, 如果想要顺序就用NSArray 当需要保持原来的顺序时,可考虑用两个NSArray代替NSDictionary。 NSDictionary,NSArray不可以将自定义的对象writeToFile。2. for(NSString* key in dic) 对字典直接循环,得到的是它的键3原创 2009-12-07 23:27:00 · 5513 阅读 · 0 评论 -
iPhone分辨率
1. [UIScreen mainScreen].applicationFrame 是{(0,20),(320,460)} [UIScreen mainScreen].bounds 是{(0,0),(320,480)} [[UIApplication sharedApplication] statusBarFrame]; 是{(0,0),(320,20)}原创 2011-05-02 23:21:00 · 4427 阅读 · 0 评论 -
触摸,事件,UIGestureRecognizer
1.UIView的触摸控制是在UIView中编程处理,不是在UIViewController中编程处理。2.独占触摸模式。。。3.- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event 在UIView中判断触摸的点是否在UIView中起作用。可以实现一些非矩形的触摸事件。 例如:圆形,判原创 2011-08-15 10:51:45 · 4938 阅读 · 0 评论 -
NSString,NSScanner,NSData,NSAttributedString
1.NSData转NSStringNSString* string= [[NSString alloc] initWithData:aData encoding:NSUTF8StringEncoding];//encoding: The encoding used by data. //NSString转NSDataNSData* data = [string dataUs原创 2010-11-22 10:13:00 · 4865 阅读 · 1 评论 -
UIButton
1.预置按钮类型 sdk提供了5个预置按钮类型:Detail Disclosure,Info Light,Info Dark,Contact Add,Rounded Rectangle。它们添加到sdk中首先是为了方便苹果公司自己。 构造方式:[UIButton buttonWithType:UIButtonTypeContactAdd];2.显示系统私有UIButton风原创 2011-10-06 10:00:29 · 4716 阅读 · 0 评论 -
短信,邮件
1.iphone4上可以安装基于sdk3.1.2开发的使用了私有api的程序,并且可以调用公有的,私有的发送短信的函数。在iphone4使用3.1.2的发送短信界面是中文的,而使用了sdk4.2中的发送短信界面却是英文的。基于sdk4.2开发,可以使用此私有api生成安装包,并可以正常运行到iphone4上并正常发送短信。但是安装到iphone3上只能看到启动页面,真机调试发现,在原创 2011-06-20 23:20:00 · 983 阅读 · 0 评论 -
安装iphone软件
1. iOS 平台上常见的安装包有三种格式,deb、ipa 和 pxl。 deb:是 Debian 系统(包含 Debian 和 Ubuntu )专属安装包格式,配合 APT 软件管理系统,成为了当前在 Linux 下非常流行的一种安装包。进入 2.x 时代之后有 Cydia 作者 Jay Freeman(saurik) 移植到iphone平台上,一起的还有 APT 软件管理系统。原创 2010-12-30 09:22:00 · 797 阅读 · 0 评论 -
UISwitch,UISlider,UIProgressView,UIActivityIndicatorView
1.UISlider允许更新其最小,最大图像,及缩略图组件。 setThumbImage设置滑块图片,默认是一个圆点。 设置两端的图像: - (void)setMinimumTrackImage:(UIImage *)image forState:(UIControlState)state;- (void)setMaximumTrackImage:(UIImage *)原创 2010-11-09 21:22:00 · 2809 阅读 · 0 评论 -
推送通知 Push Notification
1.BB,Nokia,Palm都先后支持了Push,目前流行的Push方式有三种。(1)短信触发:2G时代长时间的数据连接会影响电话接入的可靠性,所以Pushmail用短信的方式触发。推过来一个看不到的短信,让系统去连接邮件服务器。(2)长连接心跳查询:3G时代,语音和数据分离,手机长时间的保持网络连接成为可能。于是可以建立一个连接,设定一定时间间隔,让手机不断的检查服务器的邮件。(3原创 2011-06-22 23:40:00 · 5984 阅读 · 0 评论 -
定位
1.iPhone的定位技术依赖于几家提供商:Skyhook wireless,Google Map,美国国防部全球定位系统。2.GPS参考通信技术-GPS3.Wifi定位,不一定要通过wifi上网,但手机的wifi服务和位置服务一定要打开。 关于wifi热点:wifi热点越来越多,并且一般都是很少变位置的,比较固定,在城市中一个地点可能会收到多个AP信号。热点通电后都会原创 2011-05-24 16:36:00 · 914 阅读 · 0 评论 -
UIDevice,设备信息
1. 判断是否是横向屏:BOOL b=UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation); 获取设备uniqueIdentifier :[UIDevice currentDevice].uniqueIdentifier;,但在ios5中,它已被废弃。 http://kensou.blog.原创 2010-04-04 00:34:00 · 2487 阅读 · 0 评论 -
iPad开发
1.UISplitViewController 2.判断是iPadif (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){ NSLog(@"iPad"); }else { NSLog(@"iPhone"); }iPad自带兼容模式可以运行iPhone程序。3原创 2011-02-12 10:20:00 · 2037 阅读 · 0 评论 -
项目工程
1.工程中的文件 *Prefix.pch:扩展名.pch表示"precompiled header",预编译头,这是一个工程要用到的来自于外部框架的头文件列表。xcode将编译这些头到文件,这将减少在选择Build 或Build and Go时编译项目的时间。系统编译每个cpp文件前,都会先include这个文件。可以在这里面放入宏,在整个工程中都可以用。2. UIAppli原创 2012-07-12 21:20:13 · 618 阅读 · 0 评论 -
NSThread,NSOperation,NSTimer
1.NSOperation NSOperationQueuensoperation里用neurlconnection的话,必须是同步的?????? 使用NSThread类的detachNewTheadSelector:toTagaet:withObject方法创建一个线程:[NSThread detachNewThreadSelector:@selector(threadFunc:原创 2011-05-25 17:13:00 · 2842 阅读 · 0 评论 -
UIViewController
1.在init中给self.view.frame赋值,会调用viewdidload方法,然后再继续init中的代码,可以把给self.view.frame赋值放到init中的最后。 调用顺序 init,loadView,viewDidLoad,viewWillAppear 2. viewDidUnload It is called during low-memo原创 2011-05-09 23:35:00 · 3859 阅读 · 0 评论 -
数据持久,数据共享,NSFileManager,NSFileHandler,NSBundle
1. ios模拟器目录保存位置 /Users//Library/Application Support/iPhone Simulator/4.3.2/Applications//Documents 对于一个运行在iPhone得app,它只能访问自己根目录下得一些文件(即sandbox). 详见apple文档:http://www.apple.c原创 2011-08-09 14:20:08 · 2307 阅读 · 0 评论 -
UIApplication UIApplicationDelegate
几个状态的切换application:didFinishLaunchingWithOptions:applicationDidBecomeActive:applicationWillResignActive:applicationDidEnterBackground:applicationWillEnterForeground:applicationWillTerminat原创 2011-05-26 11:24:00 · 2910 阅读 · 0 评论