- 浏览: 224339 次
- 性别:
- 来自: 上海
最新评论
-
15197442045:
求demo,谢谢
IOS 后台执行代码(voip socket) -
15197442045:
我用了你这种方式,还是不能后台运行~~~~~
IOS 后台执行代码(voip socket) -
wlpych:
这个m_socket,从哪获得啊,什么方法?用的pjsip。求 ...
IOS 后台执行代码(voip socket)
文章列表
OS X系统深入了解--系统文件结构篇
OS X采用的是类UNIX的多用户系统。
通常我们在启动盘下面都只能看到应用程序、资源库、系统、用户这4个目录。但其实还有很多的隐藏目录,如bin、sbin之类的,这些都是系统的一些资源,一般是不用普通用户去访问,是些比较重要的系统文件及配置文件。
所以我这里就只是探讨一下通常在Finder中可以触及的文件项目和资源。
首先我们来了解一下OS X系统的几大组成部分:
文件系统区域:
作为了一个多用户的操作系统,控制系统资源的访问对于保证系统的稳定性是非常重要的。通过目录的设置,由当前用户的操作权限来决定该用户对每部分资源的访问。
...
ASIHTTPRequest 是一款极其强劲的 HTTP 访问开源项目。让简单的 API 完成复杂的功能,如:异步请求,队列请求,GZIP 压缩,缓存,断点续传,进度跟踪,上传文件,HTTP 认证。在新的版本中
ASIHTTPRequest 是一款极其强劲的 HTTP 访问开源项目。让简单的 API 完成复杂的功能,如:异步请求,队列请求,GZIP 压缩,缓存,断点续传,进度跟踪,上传文件,HTTP 认证。在新的版本中,还加入了 Objective-C 闭包 Block 的支持,让我们的代码加轻简灵活。
下面就举例说明它的 API 用法。
发起一个同步请求
同步意为着线程阻塞,在主 ...
NSKeyedArchiver
========================================================*/
NSString *str = @”abc”;
NSString *astr = @”efg”;
NSArray *Array = [NSArray arrayWithObjects:str, astr, nil];
//保存数据
NSString *Path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) obj ...
1:和Java的Runnable一样,NSOperation也是设计用来扩展的,并且最低仅需重写一个方法。对于NSOperation这个方法是-(void)main。一个使用NSOperation的最简单方法就是将其放入NSOperationQueue中。一旦一个操作被加入队列,该队列就会启动并开始处理它。一旦该操作完成队列就会释放它。
@interface NSDate (Helper)
- (NSUInteger)daysAgo;
- (NSUInteger)daysAgoAgainstMidnight;
- (NSString *)stringDaysAgo;
- (NSString *)stringDaysAgoAgainstMidnight:(BOOL)flag;
- (NSUInteger)weekday;
+ (NSDate *)dateFromString:(NSString *)string;
+ (NSDate *)dateFromString:(NSString *)string withFo ...
#import <UIKit/UIKit.h>
#import <MediaPlayer/MediaPlayer.h>
@interface View24 : UIViewController
{
//sdk3.2以后
MPMoviePlayerViewController *_moviePlayViewController;
//sdk3.2以前
MPMoviePlayerController *_moviePlayerController;
}
//远程视频事件
- (IBAction) playURLVideo;
//本地视频事件
- (IB ...
MDB提供了用o-c封装的访问sqlite3的方法,避免了在用O-c编程中夹杂C风格的代码(不是说不能使用,而是夹杂在一块代码风格不一致)。
以下记录使用过程中的一些心得:
1创建,插入,更新和删除:使用executeUpdate方法,而查询则用executeQuery
2 插入的数据一律用oc中的对象类型:比如某列是double,插入的时候要用NSNumber对象
3 查询结果的显示:用stringForColumn,dateForColumn等等
4出错处理:[db hadError]来判断是否有错;[db lastErrorCode], [db lastErrorMe ...
Objective-C中@class和#import的问题。参考。
假设,有两个类:ClassA和ClassB,两个之间相互使用到,即构成了circular dependency(循环依赖)。如果在头文件里面只用#import把对方的头文件包含进来(构成circular inclusions,循环包含),则编译器会报错:
Expected specifier-qualifier-list before ‘ClassA’
或者
Expected specifier-qualifier-list before ‘ClassB’
为了避免循环包含,在ClassA.h文件里面用@class ...
得到用户的首选语言(转载)
- 博客分类:
- iphone基础开发
NSUserDefaults* defs = [NSUserDefaults standardUserDefautls];
//得到用户缺省值
NSArray* languages = [defs objectForKey:@"AppleLanguages"];
//在缺省值中找到AppleLanguages, 返回值是一个数组
NSString* preferredLang = [languages objectAtIndex:0];
//在得到的数组中的第一个项就是用户的首选语言了
CFArrayRef和NSArray是toll-free bridged的,互用都没有问题。所以可以用CFArrayRef来进行归档。如下:NSString *values[] = {@"hello", @"world"};CFArrayRef arrayRef = CFArrayCreate(kCFAllocatorDefault, (void *)values, (CFIndex)2, NULL);NSArray *array = (NSArray *)arrayRef;NSData *data = [NSKeyedArchiver archivedD ...
CLLocationCoordinate2D loc = [newLocation coordinate]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://maps.google.com/maps?saddr=%f,%f&daddr=%@",loc.latitude,loc.longitude,@"中国,湖南,长沙,具体地名"]]];
TodoViewController *contentViewController = [[TodoViewController alloc] init];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:contentViewController];
navigationController.contentSizeForViewInPopover = CGSizeMake(100, 100); //内容大小
...
1 随机数的使用 头文件的引用 #import <time.h> #import <mach/mach_time.h> srandom()的使用 srandom((unsigned)(mach_absolute_time() & 0xFFFFFFFF)); 直接使用
UIScrollView的经典例子就是safari的编辑模式了 UIScrollView可以垂直,水平滚动。 如果属性pageEnabled = YES,则设置其为分页模式,那么没滚动一次就是一页,垂直方向上的一页就是UIScrollView的高度,水平方向就是其宽度。 我们可以设置contentSize,这就是UIScrollView可以滚动的最大区域了。 UIScrollView没有datasource的概念,因为这就是一个view,具体view中的内容摆放完全随意,只是每次都会滚动固定的页面大小。 比如我们有5个页面,我们需要自己计算每个页面的位置,将其水平放在UIScrollV ...
1、初始化UIPopoverController
UIPopoverController *popover = [[UIPopoverController alloc]initWithContentViewController:navigationController];
//必须是个 ViewController
/*且该 ViewController的 viewDidLoad方法中要设置其在popover中的尺寸,如
self.contentSizeForViewInPopover = CGSizeMake(