摘要:
保存玩家数据,模拟器读写都可以,而真机plist文件只能读不能写,十分头大,弄球一天找到了问题所在。按照网上比较有说服力的说法是:iOS程序执行的时候是在“沙盒”里执行。而沙盒里的数据不能写入,只能读取。经过测试,当一个程序在执行的时候,比如叫 Test.app 的iOS程序,获得他的执行地址的代码是(比如找的是CFG.plist文件)NSBundle *bundle = [ NSBundle mainBundle ];NSString *filePath = [ bundle pathForResource:@"CFG" ofType:@"plist" 阅读全文
摘要:
-(void)applicationDidFinishLaunching:(UIApplication*)application{//OverridepointforcustomizationafterapplicationlaunchPageViewController*pvController=[[PageViewControlleralloc]init];UINavigationController*navController=[[UINavigationControlleralloc]initWithRootViewController:pvController];//加载有标题的vi 阅读全文
摘要:
方法1:NSString*location =[webViewstringByEvaluatingJavaScriptFromString:@"document.location"];方法2:NSLog(@"webViewlocation = '%@'", webView.request.URL.absoluteString);以上两种一定要放在页面成功加载之后才可以的! 阅读全文
摘要:
在ios中,所有程序都运行在自己沙箱中,即只能访问自己程序的文件夹,不能访问其他程序的文件夹。 注意程序文件的路径。在Application文件夹里面放着所有在模拟器上运行过的程序程序文件。长长的编码是为了唯一地标识一个程序在每个程序的文件夹里面,Documents文件夹是存放应用程序(app)的地方,而Library文件夹是存放应用程序的设置。 UIWebView *webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 55, 320, 300)]; webView.delegate = self; webView.multipleT 阅读全文
摘要:
CGContextRef context = UIGraphicsGetCurrentContext();画一个正方形图形 没有边框CGContextSetRGBFillColor(context, 0, 0.25, 0, 0.5);CGContextFillRect(context, CGRectMake(2, 2, 270, 270));CGContextStrokePath(context);写文字CGContextSetLineWidth(context, 1.0);CGContextSetRGBFillColor (context, 1, 1, 1, 1.0);UIFont *fon 阅读全文
摘要:
可以在toolBar上添加任何View。其实它的原理是把你要添加的View先加到UIBarButtonItem里面,最后再把UIBarButtonItem数组一次性放到toolbar的items里面。1.首先,我们看一下UIBbarButtonItem有哪些初始化方法,这也可以看出,它可以被定义为什么东东,然后加到UIToolBar上面去。根据SDK的文档,我们可以发现UIBarButtonItem有如下几种初始化的方法:-initWithTitle(添加button用这个)-initWithImage-initWithBarButtonSystemItem(添加系统自定义的button,形状 阅读全文
摘要:
//加载本地pdf到webview- (void) loadDocument:(NSString *)docName{ NSString *path = [[NSBundle mainBundle] pathForResource:docName ofType:nil]; NSURL *url = [NSURL fileURLWithPath:path]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; [self loadRequest:request];} 阅读全文
摘要:
1:常用接口个人比较喜欢sqlite, 使用最方便,唯一的准备工作是下载250K的源;而且作者很热心,有问必答。以下演示一下使用sqlite的步骤,先创建一个数据库,然后查询其中的内容。2个重要结构体和5个主要函数:sqlite3 *pdb, 数据库句柄,跟文件句柄FILE很类似sqlite3_stmt *stmt, 这个相当于ODBC的Command对象,用于保存编译好的SQL语句sqlite3_open(), 打开数据库sqlite3_exec(), 执行非查询的sql语句sqlite3_prepare(), 准备sql语句,执行select语句或者要使用parameter bind时,用 阅读全文
摘要:
大多数的数据库引擎(到现在据我们所知的除了sqlite的每个sql数据库引擎)都使用静态的、刚性的类型,使用静态类型,数据的类型就由它的容器决定,这个容器是这个指被存放的特定列。Sqlite使用一个更一般的动态类型系统,sqlite中,值的数据类型跟值本身相关,而不是与它的容器相关。Sqlite的动态类型系统和其他数据库的更为一般的静态类型系统相兼容,但同时,sqlite中的动态类型允许它能做到一些传统刚性类型数据库所不可能做到的事。1. 存储类和数据类型每个存放在sqlite数据库中(或者由这个数据库引擎操作)的值都有下面中的一个存储类:l NULL,值是NULLl INTEGER,值是有符 阅读全文
摘要:
首先,添加framework:libsqlite3.0.dylib需要在对应文件的头文件中加入: #import "/usr/include/sqlite3.h"并在Frameworks中加入所需的库,否则会报错: Undefined symbols: "_sqlite3_open", referenced from:加入库的方法是:选择sqlite库:选择完的效果:下面是代码://sqlite[selfopenDataBase];//[selfcreateTable];//[selfinsertTable];[selfqueryTable];[self 阅读全文