- 博客(17)
- 资源 (13)
- 收藏
- 关注
原创 iOS 关于UITableViewCell复用机制的理解
先说一句题外话,Apple官方建议不要在scrollview中嵌套scrollview。tableview也是scrollview的一种,不到万不得已时不要将它嵌到scrollview中。我们回到正题,UITableView是很高效的,与它的cell复用机制密不可分。cell复用指的是什么呢?通俗地说一下。假设我们的tableview中有10个cell,窗口只容得下前5个,每个cell都是一样
2014-12-26 23:45:55 24928 1
原创 iOS 远程推送客户端展示
本文说一下当手机收到APNS发来的推送消息后的处理从技术层面分两种情况:1.APP运行中(前台或后台)收到推送;2.APP关闭时收到推送。从用户角度分两种情况:1.APP在屏幕上时收到推送;2.APP不在屏幕上时收到推送。从用户角度出发,我们提供两种展示推送的效果:1.APP在屏幕上时收到推送,弹出告警框询问用户是
2014-12-24 21:50:40 2618
原创 iOS 父视图与子视图
定义视图时我们经常用initWithFrame方法scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, navH, ScreenWidth, ScreenHeight - navH)];CGRectMake的前两个参数表示的是该视图的左上角的点相对于父视图的位置,在将这个视图加入到一个视图中时,会根据这点进行绘制。
2014-12-18 13:39:38 4294
原创 iOS 上传头像
Content-type: multipart/form-data, boundary=AaB03x --AaB03xcontent-disposition: form-data; name="username" Bill--AaB03xcontent-disposition: form-data; name="fileContent"; filename="image.png"C
2014-12-15 19:38:57 3621
原创 iOS 将http%3A%2F%2F解析为URL
NSString *str = @"http%3A%2F%2Fmyimg.ifeng.com%2F200%2F22%2F8a941d71c4df48a5%2F1418632228%2F8a941d71c4df48a5_1.jpg"NSString *strUrl = [str decodeURL];NSLog(@"%@", strUrl);打印结果:http://myimg.ifeng
2014-12-15 17:37:53 36843 3
原创 iOS APP在模拟器上的安装
程序第一次在模拟器上运行前需要打包、安装,所以app第一次在模拟器上打开会很慢。在此之后,我们如果修改代码,Command+R,会发现程序很快便打开在模拟器上,why? 其实,app安装在模拟器经历了打包、解包等环节,最终存在于设备中的是一个文件目录,每次代码修改,重新编译后只要把改动的目标文件在相应目录进行覆盖就可以了,所以速度很快。关于沙盒,当app安装时会生成一个沙盒路径,只要程
2014-12-11 21:53:01 3648
原创 iOS 关于presentViewController弹出页面反应迟钝的问题
想要实现点击tableview中的一个cell,弹出一个页面,代码如下: HSLoginViewController *loginVC = [HSLoginViewController new]; [self presentViewController:loginVC animated:YES completion:nil]; 结果页
2014-12-11 19:18:22 12533 6
原创 iOS 对于block的理解
block是对象,它封装了一段代码,这段代码可以在任何时候执行。block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:block是inline的,并且它对局部变量是只读的。Block的定义: int (^myBlock) (int a,int b) = ^(int a,int b){ retu
2014-12-11 01:22:29 17898
原创 iOS 图片存储与NSData
//保存图片- (void)saveImage:(UIImage *)tempImage WithName:(NSString *)imageName{ NSData* imageData = UIImagePNGRepresentation(tempImage); NSString* documentPath = [NSSearchPathForDirect
2014-12-10 13:50:20 8120
转载 日期时间格式说明
iOS-NSDateFormatter 格式说明: 一、字符说明(:)时间分隔符。在某些区域设置中,可以使用其他字符表示时间分隔符。时间分隔符在格式化时间值时分隔小时、分钟和秒。格式化输出中用作时间分隔符的实际字符由您的应用程序的当前区域性值确定。(/)日期分隔符。在某些区域设置中,可以使用其他字符表示日期分隔符。日期分隔符在格式化日期值时分隔日
2014-12-09 17:29:54 3005
原创 iOS block相关:weakSelf和block copy
当在block中调用self的方法时:__weak__typeof(&*self)weakSelf =self;当在block中使用参数传进来的block时:需要将参数block copy
2014-12-09 13:45:20 1659
原创 iOS navigationcontroller pop 回到上一层视图 如何刷新
1.从视图A中navigation controller push到视图B,当视图B navigationcontroller pop回到视图A时,并不会调用A的viewDidLoad,但是会调用viewWillAppear,所以如果视图A有需要变更的内容应该在viewWillAppear中实现。2.当一个视图生成时是先调用viewDidLoad,再调用viewWillAppear的。
2014-12-08 13:56:33 22436 4
原创 iOS 在视图中调整按钮距离边框的位置
_btn.contentHorizontalAlignment =UIControlContentHorizontalAlignmentLeft;_btn.titleEdgeInsets =UIEdgeInsetsMake(0,10.0, 0, 0);不可直接调整titleEdgedInsets,直接调整的话会是不准的,要先将按钮内容左对齐或其他方式对齐,再进行边距
2014-12-05 09:43:15 3452
原创 iOS 自定义相册图片编辑页面
//从相册中选取图片或拍照- (void)btnActionForEditPortrait:(id) sender { UIImagePickerController *picker = [[UIImagePickerControlleralloc] init]; picker.delegate =self; picker.sourceType
2014-12-01 18:29:42 11481 1
原创 iOS UIButton的titleLabel和imageView的位置调整
_btnCancel.contentHorizontalAlignment =UIControlContentHorizontalAlignmentLeft;_btnCancel.titleEdgeInsets =UIEdgeInsetsMake(0,10.0, 0, 0);先设定好按钮内组件的对齐方式。titleEdgeInsets时按照当前位置进行调解。
2014-12-01 16:53:17 5116
Apache配置文件httpd.conf
2015-09-10
新浪微博API提取个人信息
2012-12-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人