`
woodn_z
  • 浏览: 45029 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
文章分类
社区版块
存档分类
最新评论
文章列表
最近由于项目的需要,需要提高项目中数据的入库性能,通过优化,发现入库方法不同,效率真的差距很大。 最初代码如下,直接执行sql语句,外加事务提升性能: SQLiteDatabase database = new SQLiteDatabase(); if (database.isOpen()) { database.beginTransaction(); try { //sql为insert into tableName (name) values ("test") database.execSQL(sql); ...
首先添加UITextFieldDelegate,然后textFiled.delegate = self;下面就是实现UITextFieldDelegate的两个方法了,如下: //编辑前调整 - (void)textFieldDidBeginEditing:(UITextField *)textField{ CGRect r = [textField convertRect:textField.frame toView:appDelegate.window];//将textField坐标系转换成整个屏幕的坐标系 CGFloat y = 0.0; CGFloat ...
http://unmi.cc/nszombieenabled-locate-exc_bad_access-error, 来自 隔叶黄莺 Unmi Blog 我们做 iOS 程序开发时经常用遇到 EXC_BAD_ACCESS 错误导致 Crash,出现这种错误时一般 Xcode 不会给我们太多的信息来定位错误来源,只是在应用 Delegate 上留下像 Thread 1: Program received signal: "EXC_BAD_ACCESS",让问题无从找起。 比如你对已释放的对象发送消息时就会出现,EXC_BAD_ACCESS,再如 release 的对象再 ...
例如 每个UITableViewCell里有个UITextField,当UITextField获得焦点时不会触发tableview的didSelectRowAtIndexPath方法,就不能知道触发是哪个cell,下面方法可以获得UITextField所在行的indexPath,方法很简单,注意两种方式。 如果是将textField添加在cell.contentView上: //获得row NSInteger row = [[self.tableView indexPathForCell:(UITableViewCell *)[[sender superview] superview]] ...
常常我们在做界面的时候会用到文本框输入,但当把输入文本框放的过于低,就会导致在填写信息的时候弹出的虚拟键盘遮盖输入文本框,导致看不见所输入的信息,这对于用户体验当然很不好,所以我们需要改进这一情况,方法大致就是在点击输入文本框准备输入的时候,使得文本框上移到用户能看见的地方。这方法是网上资料,或许还有别的更好的解决方法,希望大家都能发出来。 比如如下的UIViewController有一个UITextField对象 @interface MyViewController : UIViewController <UITextFieldDelegate> { UITextF ...
最近项目用到了从服务器获取xml文件,需要解析xml来获取数据,下面简单举个例子,以便自己以后学习并复习。另外http://www.w3school.com.cn/xpath/xpath_examples.asp上有一些例子,有兴趣的同学可以去看看xml的相关知识。 从服务器上下载的xml文件: <?xml version="1.0" encoding="utf-8"?> <page> <ROWSET> <ROW num="1"><!-- 订单1 --> ...
以下是一些SQLite3的基本操作,主要是写给自己温习,同时也希望能帮到像我一样的新手! 注意:要在工程中的Frameworks中导入相应的libsqlite3.dylib文件,也许在相应的目录下存在多个以libsqlite3开头的文件,务必选择libsqlite3.dylib,它始终指向最新版的SQLite3库的别名。 打开数据库: NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDire ...
原文见:http://www.cnblogs.com/dotey/archive/2011/05/10/2041966.html 官方网站:http://allseeing-i.com/ASIHTTPRequest/ 。可以从上面下载到最新源码,以及获取到相关的资料。 使用iOS SDK中的HTTP网络请求API,相当的复杂,调用很繁琐,ASIHTTPRequest就是一个对CFNetwork API进行了封装,并且使用起来非常简单的一套API,用Objective-C编写,可以很好的应用在Mac OS X系统和iOS平台的应用程序中。ASIHTTPRequest适用于基本的HTTP请求,和 ...
ASIHTTPRequest 一款强大的HTTP包装开源项目 ASIHTTPRequest是什么? 官方地址:http://allseeing-i.com/ASIHTTPRequest/ ASIHTTPRequest是简单易用的,它封装了CFNetwork API。使得与Web服务器通信变得更简单。它是用Objective-C编写的,可以在MAC OS X和iPhone应用中使用。 它适用于执行基本的HTTP请求和互动(或者说是反馈)。ASIFormDataRequest子类可以简单的实现提交数据和文件。使用multipart/form-data 提供了以下: 一个从web服务器提交和 ...
本文引用自vincent《iphone 网络编程总结》 一:确认网络环境3G/WIFI     1. 添加源文件和framework         开发Web等网络应用程序的时候,需要确认网络环境,连接情况等信息。如果没有处理它们,是不会通过Apple的审(我们的)查的。     Apple 的 例程 Reachability 中介绍了取得/检测网络状态的方法。要在应用程序程序中使用Reachability,首先要完成如下两部:         1.1. 添加源文件:     在你的程序中使用 Reachability 只须将该例程中的 Reachability.h 和 Reacha ...
以下是开发初期收集整理的一点资料,简单实用,都是网络上收集的,若侵犯您的权益,请告知,本人将及时删除相关内容。 多线程之NSInvocationOperation 多线程编程是防止主线程堵塞,增加运行效率等等的最佳方法。而原始的多 ...
关于所有权 所有权是iPhone内存管理的核心思想,对象的所有者负责在使用完对象后进行释放。一个对象可以有多个所有者,当它没有所有者时将被设置为取消分配(deallocation)。 创建对象时,所有权通过alloc、new、或者copy的方 ...
copy 和 retain 的区别     copy: 建立一个索引计数为1的对象,然后释放旧对象     retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1     那上面的是什么该死的意思呢?     Copy其实是建立了一个相同的对象,而retain不是:       比如一个NSString对象,地址为0×1111,内容为@”STR”       Copy到另外一个NSString之后,地址为0×2222,内容相同,新的对象retain为1,旧有对象没有变化       retain到另外一个NSString之后,地址相同(建立一个指针,指针拷贝),内容当 ...
Global site tag (gtag.js) - Google Analytics