IOS学习笔记
Que_Li
这个作者很懒,什么都没留下…
展开
-
iOS混编代码
本工具用于应对苹果对重复应用的审核(Guideline 4.3 Design Spam),避免苹果机审检测概率。大神柯磊的第一个版本:https://github.com/klaus01/KLGenerateSpamCode大神YuYang增加功能后的第二个版本:https://github.com/JourneyYoung/iOSMixProject使用方法:1.Xcode -> ...原创 2019-06-18 17:50:07 · 721 阅读 · 0 评论 -
ios 电池栏的隐藏及样式设置
电池栏样式设置见网址;http://www.jianshu.com/p/5aa05983b445原创 2016-11-11 16:58:57 · 1983 阅读 · 0 评论 -
git ssh配置 及提交命令
git使用https协议,每次pull, push都要输入密码,相当的烦。使用git协议,然后使用ssh密钥。这样可以省去每次都输密码。大概需要三个步骤:一、本地生成密钥对;二、设置github上的公钥;三、修改git的remote url为git协议。一、生成密钥对。=============大多数 Git 服务器都会选择使用 SSH 公钥来进转载 2016-05-13 10:10:00 · 568 阅读 · 0 评论 -
xcode导入外部工程
如何将两个项目整合到一个项目下(图1) 可能你试过直接在一个项目里面直接把另一个项目拖进来,也试过add File..这些东西,但是最终可能还是没能完成,那么,到底要怎么做呢? (操作1)首先,在进入到你当前项目的路径下,把需要添加的工程/framework手动拷贝到这个目录。 (操作2)第二步,在Xcode上面打开当前项目,在侧转载 2016-11-10 16:24:40 · 13951 阅读 · 1 评论 -
iOS指定页面屏幕旋转,手动旋转(某app实现功能全过程)
背景: app内有一个双页的界面,然后某天运营说如果其中一页能支持横屏的话,对接的媒体就能给一整块屏幕,然后需求就这样下来了(双页:一页支持横屏效果,另一页不支持)。接下来就是查文档时间了,Duang,一下就查到了有没有,就是下面这两个方法。//支持设备自动旋转- (BOOL)shouldAutorotate{ returnYES;}//支持横竖屏显示- (NSUInteger)supp转载 2016-11-09 17:04:15 · 671 阅读 · 0 评论 -
视频播放器上实现AirPlay投屏功能
实现类似腾讯视频App 投影到电脑或电视上的功能先明确几个问题:1.多屏互动功能中 iphone设备基于AirPlay协议,Android设备基于DLNA协议;2.原理是把正在播放的视频推送到同一网络中的其它播放设备,如电视、手机、电脑,它们共享这一视频播放;MPVolumeView *volume = [[MPVolumeView alloc] initWithFrame:CGRectMake(0转载 2016-11-09 15:23:22 · 6682 阅读 · 1 评论 -
cocoapods
iOS 最新版 CocoaPods 的安装流程1.移除现有Ruby默认源$gem sources --remove https://rubygems.org/2.使用新的源$gem sources -a https://ruby.taobao.org/3.验证新源是否替换成功$gem sources -l4.安装CocoaPods(1) $sudo gem inst原创 2016-06-15 14:22:26 · 339 阅读 · 1 评论 -
处理图片的旋转问题bug
UIImage有一个imageOrientation的属性,主要作用是控制image的绘制方向,共有以下8中方向//UIImageOrientation的定义,定义了如下几种变换 typedef enum { UIImageOrientationUp, // default orientation UIImageOrientat原创 2016-06-15 09:38:14 · 668 阅读 · 0 评论 -
AFN3.0API调用
关于AFNetworking 3.0NSURLConnection的API已废弃AFNetworking 1.0 是建立在 NSURLConnection基础上的,AFNetworking 2.0 开始使用基于NSURLConnection *API基础功能,同时也有基于新的NSURLSession* API 的功能实现。AFNetworking 3.0现在是专门建立在 NSURLSe原创 2016-06-03 10:42:21 · 2802 阅读 · 0 评论 -
iOS 9 Xcode7 设置Launch Image 启动图片
Step1 1.点击Image.xcassets 进入图片管理,然后右击,弹出"New Launch Image" 2.如图,右侧的勾选可以让你选择是否要对ipad,横屏,竖屏,以及低版本的ios系统做支持.这边我选了ios8.0,ios7.0,ios6没有做支持. Step2 将规定尺寸的图片从你的文件中拖动进到固定位置. 系统尺寸分辨原创 2016-05-05 11:19:28 · 1264 阅读 · 0 评论 -
判断应用是否允许定位当前位置
判断用户是否开启了定位功能:if ([CLLocationManager locationServicesEnabled] && ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized || [CLLocationManager authorizationStat原创 2016-05-03 10:14:59 · 1584 阅读 · 0 评论 -
MPMoviePlayerController全屏模式下横屏与竖屏切换
使用系统的MPMoviePlayerController处理多媒体视频文件的时候,会遇到在进行全屏切换时,进入全屏后播放画面会发现还是竖屏模式,这样的话就完全失去了全屏模式的有优势了,浪费了很多屏幕空间,查阅了一些资料,发现可以通过注册监听通知中心关于MPMoviePlayerController控件的进入全屏(MPMoviePlayerWillEnterFullscreenNotification原创 2016-11-02 14:58:09 · 2211 阅读 · 0 评论 -
iOS 横屏、转屏网址
最简单的方法:[[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIInterfaceOrientationLandscapeRight] forKey:@"orientation"];这篇帖子区分了三种情况:包含nav,包含tabBar,自身为单独的viewcontroller。http://www.jianshu.com转载 2016-11-15 17:22:45 · 398 阅读 · 0 评论 -
cordova 插件开发
1.新建TestPlugin类,继承自CDVPlugin;注意需要导入头文件 2.在TestPlugin.m中实现方法 3.到这里oc端定制的借口已经完成,但是还必须修改配置文件。 在Staging文件夹下的config.xml中,在标签内添加如下字段:<feature name="TestPlugin"> <param name="ios-package" value="Tes原创 2016-11-18 10:18:46 · 413 阅读 · 0 评论 -
符号化定位crash
通过Mac自带的命令行工具解析Crash文件需要具备三个文件1.symbolicatecrash2.JSShuo.crash ----> 崩溃时产生的Crash文件,XXX.crash。3.JSShuo.app.dSYM ----> 打包时产生的dSYM文件。第一步:获取symbolicatecrash工具打开终端输入以下命令:find /Applications/Xcod...原创 2019-03-20 15:05:55 · 317 阅读 · 0 评论 -
Assertion failure in -[UITableView _endCellAnimationsWithContext:]---错误
由于项目需要,做一个UITableView来实现删除功能。功能思路其实不难:交代一下,我自己要实现的效果:1.TableView是分组的。2.点击删除按钮后,某行被删除。写完,大概功能,运行:出现:*** Assertion failure in -[UITableView_endCellAnimationsWithContext:],/SourceCache/UIKit_Sim/U...转载 2018-12-03 22:25:56 · 1361 阅读 · 0 评论 -
Xcode 神兽护体
我们经常看到 .h 头文件的顶部有“神兽”,办法如下: 找到 Xcode ▸ Contents ▸ Developer ▸ Platforms ▸ iPhoneOS.platform ▸ Developer ▸ Library ▸ Xcode ▸ Templates文件夹 当前目录下你会发现这是Xcode创建文件的时候出现的5大分类,里面的子文件夹对应的是每个分类下的选项如果我们需要修...原创 2018-08-31 16:09:34 · 303 阅读 · 0 评论 -
collectionview 滚动到指定的位置
答:调用此方法可滚动到组头-(void) scrollToSectionHeader:(int)section { NSIndexPath *indexPath = [NSIndexPathindexPathForRow:0 inSection:section]; UICollectionViewLayoutAttributes *attribs =[self.c...原创 2018-06-20 14:34:44 · 10258 阅读 · 0 评论 -
iOS获取设备ID总结
**UDID**简介:UDID的全称是Unique Device Identifier,顾名思义,它就是苹果IOS设备的唯一识别码,它由40个字符的字母和数字组成。在很多需要限制一台设备一个账号的应用中经常会用到。在iOS5中可以获取到设备的UDID,iOS7中已经完全的禁用了它。iOS7之前的使用了的app如果在iOS7上运行,它不会返回设备的UDID,而是会返回一串字符串,以FFFFFFFF开头原创 2017-08-03 10:03:20 · 7550 阅读 · 0 评论 -
WebView 和 WKWebView的对比
网址:http://www.jianshu.com/p/403853b63537转载 2017-01-13 17:19:16 · 820 阅读 · 0 评论 -
AFN&SDWebImage配置HTTPS
AFN中的主要代码如下:AFHTTPSessionManager *mgr = [AFHTTPSessionManager manager]; // 2.申明返回的结果是text/html类型 mgr.responseSerializer = [AFHTTPResponseSerializer serializer]; // 3.设置超时时间为10s mgr.reques原创 2016-12-27 20:47:16 · 1715 阅读 · 0 评论 -
ios 静态库(.a)文件相关流程及-ObjC, -all_load, -force_load
关于.a文件的制作,网上有很多博客:http://www.jianshu.com/p/8f5b9855efb8。http://www.jianshu.com/p/43d55ae49f59。这里不再赘述。在.a文件的操作过程中有很多疑惑点: 1.如果一个工程期初并不是按照Library的格式新建的,那么这样的工程可以打包成.a文件吗? 答:可以。流程是:将之前的工程所有文件导入新建的Library原创 2016-12-13 11:59:20 · 971 阅读 · 0 评论 -
支持https请求以及https请求的抓包
iOS9推出的时候,苹果希望大家使用https协议,来提高数据传输之间的安全性。下面我就从最简单的代码介绍,如何在工程中设置,来支持https的请求。一、证书准备篇 1.证书转换 在服务器人员,给你发送的crt证书后,进到证书路径,执行下面语句 // openssl x509 -in 你的证书.crt -out 你的证书.cer -outform der 这样你就可以得到ce转载 2016-12-07 10:27:07 · 775 阅读 · 0 评论 -
cocoapod升级的坑 && pod search :Unable to find a pod with name
最近使用cocoapod的时候遇到一个错误,提示说:当前版本0.39,要求是1.0.0版本。无奈只好升级。在执行gem install xxx的时候会提示各种各样的错误,大部分原因是gem使用的是系统自带的,所以前面要加sudo gem install xxx。cocoapod升级的时候,执行下图代码,并且指定安装本版即可:sudo gem install -n /usr/local/bin coc原创 2016-11-14 12:55:24 · 980 阅读 · 0 评论 -
当VC消失后,tabBar执行选中某个item代码
需求:当某个页面消失后,执行tabBar选中某个item的方法,然后可以对tabBar进行相关操作,此时处于主界面状态[(UITabBarController *)[UIApplication sharedApplication].keyWindow.rootViewController setSelectedIndex:2]; [self.navigationContr原创 2016-05-13 13:37:44 · 603 阅读 · 0 评论 -
UIAlertController设置
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"title" message:@"message" preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *cancelAction = [UIAlertAct原创 2016-05-03 09:37:41 · 404 阅读 · 0 评论 -
设置导航栏的背景颜色和字体
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"OffLineNavView"] forBarMetrics:UIBarMetricsDefault]; [self.navigationController.navigationBar setTitleTextAttribu转载 2015-12-28 19:26:39 · 480 阅读 · 0 评论 -
XCODE7的一些新问题
1 directory not found for option问题警告如下:ld: warning: directory not found for option ‘-F/Applications/Xcode 7.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulat转载 2015-10-15 17:25:55 · 434 阅读 · 0 评论 -
XCode6添加自定义framework运行真机出现dyld: Library not loade
笔记下,备忘。环境:Mac OS X 10.9.5,XCode 6.0.1XCode6上iOS上开发新增了新建framework项目的功能,方便封装和分发代码。新建了一个workspace,包含了2个iOS framework项目,,一个iOS App项目,在App项目的Link Binary With Libraries里加入引用:XCode6添加自定义frame转载 2015-10-15 17:47:06 · 467 阅读 · 0 评论 -
Xcode编译Undefined symbols for architecture xxx 错误总结
每次遇到这种错误就头痛,不知道要害死多少脑细胞了,就在这里做个总结吧可能会遇到这几种错误:Undefined symbols for architecture armv7Undefined symbols for architecture armv7sUndefined symbols for architecture arm64Undefined symbols for转载 2015-10-15 17:43:31 · 507 阅读 · 0 评论 -
undefined symbols for architecture armv7
今天在调用公司其它人写的静态库的时候,编译一直无法通过一直报错 undefined symbols for architecture armv7 referenced from。最后发现是在制作静态库的时候,只是把文件添加到了工程。但是compil sources里面默认没有添加的,需要我们手动去添加资源文件,然后就解决了。下面附带stackoverflow有人分析转载 2015-10-15 17:41:26 · 518 阅读 · 0 评论 -
oc自动转换成swift网址
https://objectivec2swift.com/#/converter/code转载 2015-11-12 17:54:03 · 2898 阅读 · 0 评论 -
ScrollView相关属性
UIScrollView是用来在屏幕上显示那些在有限区域内放不下的内容。例如,在手机屏幕上显示内容丰富的网页或者很大的图片。在这种情况下,需要用户对屏幕内容进行拖动或缩放来查看屏幕或窗口区域外的内容。所以,ScrollView应该首先有一个窗口,用来显示内容,其次,还要有内容本身。这里的这个显示窗口就是UIScrollView,这个窗口可以是整个手机屏幕,也可以只是手机屏幕的一部分区域(屏幕其转载 2015-10-11 23:01:56 · 1713 阅读 · 0 评论 -
xcode7 适配中的一些问题
xcode7中IOS国际化语言本地化时,会出现语言版本改变的情况,app第一次运行时会无字体显示,具体适配过程可见网址:http://www.cocoachina.com/ios/20150929/13598.html转载 2015-11-09 10:37:05 · 363 阅读 · 0 评论 -
如何隐藏tabBar
//隐藏tabbar- (void)hideTabBar { if (self.tabBarController.tabBar.hidden == YES) { return; } UIView *contentView; if ( [[self.tabBarController.view.subviews objectAtIndex:原创 2015-11-05 13:12:02 · 399 阅读 · 0 评论 -
duplicate symbols for architecture x86_64
duplicate symbols for architecture x86_64 造成该问题的原因在某个头文件中包含了.m文件名,粗心导致。原创 2015-11-05 11:11:11 · 579 阅读 · 0 评论 -
iOS多语言本地化(国际化)设置
讨论的iOS应用中的多语言设置,Ok 一般是两种情况:1.根据当前设备语言自动切换显示2.在应用中可进行语言设定至今,我个人做过的项目中有6个是涉及到多语言的,其中全部都是需要在应用中可进行设置。 其实也没多大关系,我们这里会首先说说根据当前设备语言进行切换界面的显示(这些都是网上能搜到的,我整理下给自己清晰点的步骤以便后续查看罢了)。而关于在应用在进行语言设定,其实就转载 2015-12-17 13:54:59 · 2069 阅读 · 0 评论 -
ios 静态库开发
关于静态库的使用,http://www.jianshu.com/p/8f5b9855efb8网址解释的很详细,如何合并真机和模拟器http://www.cnblogs.com/qingjoin/archive/2013/01/31/2886985.html转载 2015-12-18 13:25:12 · 293 阅读 · 0 评论 -
上架前关于打包过程中涉及三方framework的库的相关链接
1.bitcode设置为no;2.bulid phase 中的link (链接库的设置)。打包过程中不能绑定三方库。new copy file 将新建出来的file文件的类型选择为framework,同时添加需要的framework。进入general,将embedded binaries中的相关库删除掉参考资料:https://github.com/Alamofire原创 2015-12-18 17:13:56 · 368 阅读 · 0 评论 -
iOS 打包上传蒲公英安装失败及证书选择相关事项
打包上传蒲公英会涉及打包ipa的问题,涉及到签名和证书的选择问题:1.公司账号($99):上限设备100台。在选择发布版本时选择Ad-hoc版。并且要在后台注册手机的UDID方可下载安装。 注意事项:如果没有注册UDID会导致安装失败。2.企业账号($299):设备没有上限,可无限注册。发布时选择enterprise版本。 备注:使用方便简洁,但是安装成功后会提示未受信任的开发原创 2016-05-13 10:20:55 · 5015 阅读 · 0 评论