iOS开发(Objective-C)
文章平均质量分 60
奔跑的Yancy
科研方向:机器视觉、深度学习;
项目方向:iOS APP、H5 APP;
展开
-
iOS开发中自定义tableView中某个cell的高度
在开发中遇到一个问题:采用了自适应的tableview高度,结果有一个新增的cell的高度老是不准,由于它的indexpath.row是不确定的,所以没法通过heightfForRow代理方法定死,只好自己弄,也就是说要自己设定tableview中某个位于不固定row的cell的高度的问题。查阅了很多文章都没找到满意答案,后来通过以下方式解决: UITableViewCell原创 2018-02-01 12:24:16 · 2707 阅读 · 0 评论 -
探索Xcode:[framework] CUICatalog: Invalid asset name supplied: '(null)'解决方法初探
集成了第三方的tabbar之后,一直报这个错误。问题出现原因:调用了[UIImage imageNamed:name]这个方法,但是所填的ImageName是个空的。那么是哪个图片名字输错了?可以通过设置断点的方式:点击breakPoints——>选择“+”——>symbolic breakpointsymbolic:填入[UIImage imageNamed:]condition:填...原创 2018-03-27 10:17:52 · 4057 阅读 · 0 评论 -
PPM图像详解和P3图像引起iOS 9崩溃闪退问题解决方案
一、iOS 9因图像格式不符导致闪退解决方案iOS 9.3以下(9.1、9.2)对图像格式敏感。若是16位或P3的图像,会引发闪退。而且收集用户crash报告是一堆混乱的地方报错,并无法明确定位到出错的代码在哪里。出现大面积iOS 9.1、9.2系统用户闪退、崩溃的情况,请仔细回想一下此版本做的操作,大概率是加入了不符合规则要求的图片。最常见也是最明显的犯错情况是加入了jpg、jpeg等类型的图片...原创 2018-04-02 13:44:59 · 3355 阅读 · 0 评论 -
iOS悬浮、可拖动、自动吸附屏幕边缘的按钮制作
想制作一个按钮,类似于iPhone 的辅助touch的那个小白点的按钮。但是注意:千万不能也做成小白点,可能会导致审核被拒。不明白网络上查到的那些,为什么会那么复杂,涉及到那么多的页面。其实只要在要出现这个按钮的控制器的.m文件里写几段代码就可以解决,非常轻便,尤其适合开发新手。首先,在想放这个button的vc里,创建一个成员对象。@property (nonatomic,strong)UIBu...原创 2018-03-29 10:40:36 · 10769 阅读 · 0 评论 -
iOS APP:简单粗暴的自制下拉刷新
先对页面设置一个BOOL类型的stopRefresh 属性。(@property )初始化:_stopRefresh = NO;然后:在scrollViewDidScroll里面实现:(注意要先实现scrollView的相关协议)重点就是上图中,在下拉刷新触发操作后,要把stopRefresh置为YES。如此一来,通过这个全局变量,就可以简单粗暴地控制下拉刷新,不会向服务器发送请求了。然后恢复视图...原创 2018-05-18 10:12:06 · 2463 阅读 · 0 评论 -
iOS弹出提示选择窗和登录框代码示例:UIAlertController——UIAlertView
-(void)cancelAction{ UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"提示" message:@"是否确定放弃回复?" preferredStyle:UIAlertControllerStyleAlert]; [self present...原创 2018-05-18 10:17:11 · 3205 阅读 · 0 评论 -
iOS使用NSLog输出各数据类型的占位符归纳
一、OC中数据类型1)基本数据类型:整型、字符型、浮点型(double、float)、枚举型;2)构造类型:数组、结构体、共用体类型;3)指针类型:所有的系统类、自定义类都是指针;4)空类型:nil,没有任何东西。二、数据类型输出在iOS中一般使用NSLog()输出。需要用占位符,例如%@,后面的参数去替换占位符。整型占位符:%d十进制整数,正数无符号,负数有“-”符号%o八进制无符号整数,没有0...原创 2018-06-05 15:02:27 · 4078 阅读 · 0 评论 -
iOS:继承、分类和类扩展
一、继承 继承是指一个新类拥有被继承类(父类)的全部属性和方法。例如,只有继承NSObject,才有创建对象的能力。NSObject是大部分类的基类(根类,root class)。 当A类继承B类,A类就拥有B类中所有成员变量(属性)和方法。这也是继承的主要目的。 使用场景:当我们可以说通B是一个A时,就可以使用B继承A类。 继承的好处:代码重用;继承的缺点...原创 2018-06-06 10:17:07 · 8750 阅读 · 1 评论 -
iOS底部弹出选择菜单:UIAlertController——UIActionSheet
本文代码源于自己的项目,亲测可行,简单易上手。我们知道,从iOS8后,已经使用UIAlertController来取代UIAlertView和UIAlertSheet。弹出菜单的方法,实现如下:-(void)creatActionSheet { /* 先创建UIAlertController,preferredStyle:选择UIAlertControllerStyleActio...原创 2018-07-05 21:26:23 · 12224 阅读 · 3 评论 -
UIImagePickerController:拍照或从相册、图库选取图片
UIImagePickerController 是系统提供的用来获取图片和视频的接口;用UIImagePickerController 类来获取图片视频,大体分为以下几个步骤:1. 初始化UIImagePickerController 类;2. 设置UIImagePickerController 实例的数据来源类型(下面解释);3. 设置设置代理;4. 如果需要做图片修改的话设置allowsEdi...原创 2018-07-05 21:38:59 · 2147 阅读 · 0 评论 -
简单粗暴解决新版xcode报错:旧版xcode下载/xcode版本回退
新版本xcode一如既往出各种bug。印证了那个道理:永远不要早早更新苹果的产品…回退xcode版本的童鞋,进入:https://developer.apple.com/download/more/左侧搜索xcode!...原创 2018-11-22 14:42:24 · 2903 阅读 · 0 评论 -
iOS:NSUserDefaults开发者文档解读、用法注意和代码实例
目录开发者文档解读使用注意事项使用示例附:iOS开发者文档英文原文已经有许久未更新博文了,最近主要回到iOS应用开发的横向项目上,所以在视觉、算法等其他领域暂时还木有空更新。开发者文档解读NSUserDefaults是一个分层持久进程间(可选分布式)键值存储,是针对存储用户的设置而存在的一种优化手段。(NSUserDefaults是一个单例,在整个程序中只有一个实例对象...原创 2019-02-22 10:17:39 · 455 阅读 · 0 评论 -
github提交报错failed to add file / to index解决方案
github提交报错failed to add file / to index 或者:Updates were rejected because the tip of your current branch is behind并不是很清楚原因,尝试了各种方法,总结了网上的方法:有如下几种解决方法:打开项目所在文件夹【终端】:1.使原创 2018-02-01 12:50:16 · 5982 阅读 · 1 评论 -
NSDate获取当前时间、间隔、年月日、转NSString等方法总结
一、以NSString形式获取当前时间-(NSString*)getCurrentTimes{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; // ----------设置你想要的格式,hh与HH的区别:分别表示12小时制,24小时制 [formatter setDateFormat:@"Y原创 2018-02-01 13:01:01 · 8697 阅读 · 0 评论 -
阿里云服务器通过镜像安装tomcat后的各种问题踩坑及解决
买了一个阿里云服务器,windows server2012的,选择从市场上安装了第三方提供的免费镜像(mySQL+tomcat+java),从昨天晚上弄到现在,各种踩坑,本来是很容易的事情一直出现一些莫名其妙的bug。如果您也是从阿里云市场上安装的第三方镜像,可能也会遭遇如下问题,而且新手不好判断是哪个环节出错:1、local:8080打不开2、.war包无法被自动解压3、tomcat原创 2018-02-02 13:48:53 · 2864 阅读 · 0 评论 -
tableView中分割线为什么不显示?——跳坑及小技巧
往tableview中隐藏分割线的方法,比较简单,网上很多;今天遇到一个问题:向tableview中添加分割线。一般我们都会这样做:tableView.separatorInset = UIEdgeInsetsZero 然而发现并没有效果;于是查阅了资料,一般可以按照如下方法解决:-(void)tableView:(UITableView *)tableView willDisp原创 2018-02-06 19:08:05 · 1646 阅读 · 0 评论 -
Xcode连接git@osc仓库
大家肯定想要将项目连接到git,而在中国,码云中国(git@osc)似乎更好用一些,但是其如何配置?如何和Xcode连接?对于小白来说,看官方教程总显得很吃力,于是我整理了下自己的操作步骤。由于Xcode已经集成了git,建立新项目时钩选使用git,然后按照下面步骤让Xcode和git@osc建立连接即可。第一步:成生SSH密钥打开终端命令工具,输入命令:ssh原创 2018-02-07 14:31:39 · 562 阅读 · 0 评论 -
iOS Spring 弹簧动画总结
仿照微博首页中间加号后弹出按钮的设计,我的实例:UIButton *button = [[UIButtonalloc] initWithFrame:CGRectMake(100,100, 100,50)]; button.backgroundColor = [UIColorredColor]; [self.viewaddSubview:button]; [UIV原创 2018-02-07 14:34:20 · 4310 阅读 · 0 评论 -
错例:做类扩展时不调用父类方法 会发生什么?
为制作制作iOS悬浮可拖动、吸附屏幕边缘的按钮,网上搜索到了一个古老的第三方类方法(如下)。导入我的工程后,出现了tabbar、拍照按钮等失效或响应非常慢的情况。究竟是什么出错了呢?请先看这位同学写的源代码:设计UIButton的分类:UIButton+NMCategory.h:@interface UIButton (NMCategory)@property(nonatomic,assign...原创 2018-03-09 16:53:16 · 341 阅读 · 0 评论 -
iOS APP中嵌入网速监测功能
企鹅的手机管家、一些网页都提供了网速监测功能。在开发过程中我们偶尔也需要开发这个模块,以提示用户网速的状况,增强用户体验。常见的网络测速方案通过调研发现,目前常见的网络测速方案只有两种:方案1:通过上传和下载数据包,使用 TotalSize / TotalTime 来计算真实的上传和下载速率是多少方案2:通过读取网卡数据来计算,读取上一秒的整体流量消耗 T1,然后读取当前的流量消耗 T2,那么 T...原创 2018-03-12 11:21:16 · 10135 阅读 · 1 评论 -
iOS APP内弹窗推送版本更新信息(实现跳转、强制更新等)
1、一打开APP就检测版本更新信息,则需要在AppDelegate.mm里面添加: NSString *version = [[[NSBundle mainBundle]infoDictionary] objectForKey:@"CFBundleVersion"]; AFHTTPSessionManager *mgr = [AFHTTPSessionManager manag...原创 2018-03-12 11:32:51 · 12560 阅读 · 12 评论 -
iOS中对大图片压缩处理
以往图片缩放接口是这样写的: 但处理大分辨率图片时,往往容易出现OOM,原因是-[UIImage drawInRect:]在绘制时,先解码图片,再生成原始分辨率大小的bitmap,这是很耗内存的。解决方法是使用更低层的ImageIO接口,避免中间bitmap产生:...原创 2018-03-06 09:38:50 · 1205 阅读 · 0 评论 -
iOS APP适配iPhone X全屏
要让APP在iPhone X上变成全面屏显示(占满整个屏幕),而不是上下有没用的黑条,其实很容易,只需要:在LaunchImage 中添加一个和 iPhone X 相关的启动图片。即一张尺寸:1125 * 2436 的启动图片,让UI小姐姐帮忙切一张就好了。或自己用“预览”-“工具”-“调整大小”来简单制作一个测试下。添加之后,对launchImage - show in finder,找到con...原创 2018-03-29 21:15:36 · 4277 阅读 · 0 评论 -
iOS使用方法传递多个参数
1、一般情况,使用 self performSelector:SEL withObject:id方法[self performSelectorOnMainThread:@selector(testAA:) withObject:[NSArray arrayWithObjects:@"1",@"2", nil nil] waitUntilDone:NO]; -(void) testA...原创 2018-03-29 21:31:08 · 3527 阅读 · 0 评论 -
人工智能、深度学习+iOS:入门准备材料
ncnn腾讯官方开源项目:https://github.com/Tencent/ncnnncnn的iOS demo:目前还比较少。参考官方讨论:https://github.com/Tencent/ncnn/issues/24基于ncnn的ios人脸识别应用:https://github.com/xuduo35/ncnn-mtcnn-facenet或者在github上搜索关键字,找写d...原创 2019-03-04 20:55:18 · 1012 阅读 · 0 评论