自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

原创 iOS 算法之--查找最长公共前缀

-(NSString*)longestCommonPrefix:(NSArray*)stringArray{ if (stringArray.count == 0) { return @""; } else if (stringArray.count == 1) { return stringArray[0]; } NSString *minString = stringArray[0]; ...

2020-10-15 13:23:35 6

原创 iOS算法之-找到字符串中第一个不重复的字符

NSString *str = @"qwrwqrqrqrwqwrql12e1e12ffw";NSMutableArray * strArr = [NSMutableArray arrayWithCapacity:0];// 遍历字符串,按字符来遍历。每个字符将通过block参数中的substring传出[str enumerateSubstringsInRange:NSMakeRange(0, str.length) options:NSStringEnumerationByComposedCha..

2020-10-15 13:23:00 8

原创 iOS 算法-去掉字符串中不相邻的重复字符串

NSString *a = @"aabslcad"; NSMutableArray *temps = [NSMutableArray array]; NSString*temp =nil; for(inti =0; i < [a length]; i++)// 遍历每个字符 { temp = [a substringWithRange:NSMakeRange(i,1)]; [temps addObject:temp]; ...

2020-10-15 13:22:32 21

原创 iOS算法-找两个字符串中相同字符串的最大长度

NSString *str1 = @"qwe不重要我爱你的人的文字ty"; NSString *str2 = @"哈qwe这也我爱你的人是ty"; NSArray *arr = [self matchLongestSubstrings:str1 with:str2]; NSLog(@"最长的字符串:%@", arr);-(NSArray *)matchLongestSubstrings:(NSString *)str1 with:(NSString *)st...

2020-10-15 13:22:01 14

原创 iOS算法-找到字符串中第一个不重复的字符

NSString *str = @"qwrwqrqrqrwqwrql12e1e12ffw"; NSMutableArray * strArr = [NSMutableArray arrayWithCapacity:0]; // 遍历字符串,按字符来遍历。每个字符将通过block参数中的substring传出 [str enumerateSubstringsInRange:NSMakeRange(0, str.length) options:NSStringEnumeratio...

2020-10-15 13:21:29 13

原创 Mac系统升级后,无法安装Cornerstone解决办法

依次执行如下步骤:1、打开终端,输入: sudo spctl --master-disable,按回车键2、输入密码,按回车键(此时在系统隐私里,会显示允许任何来源安装的选项,并是选中状态)3、继续输入:sudo xattr -r -d com.apple.quarantine /Applications/Cornerstone.app/,按回车键这是网络上大部分教程没有讲到的关键部分!4、关闭终端,再重新打开试试吧!4.1版本 cornerstone 下载链接: https://p

2020-10-15 13:20:43 34

原创 NSRunLoop失效的一般原因

一个RunLoop对象(CFRunLoopRef)中包含若干个运行模式(CFRunLoopModeRef)每次 RunLoop 启动时,只能指定其中一个运行模式(CFRunLoopModeRef),这个运行模式(CFRunLoopModeRef)被称作当前运行模式(CurrentMode)。 如果需要切换运行模式(CFRunLoopModeRef),只能退出当前 Loop,再重新指定一个运行模式(CFRunLoopModeRef)进入。 这样做主要是为了分隔开不同组的输入源(CFRunLoopSou

2020-07-10 14:34:43 61

原创 iOS开发中Block实现数组遍历和排序的总结

一,enumerateObjectsUsingBlock 实现数组遍历NSArray *arr = [NSArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5", nil];[arr enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {...

2020-05-08 14:05:53 101

原创 cocoapods 进行升级遇到的几种报错提示的解决办法

1.查看本地pod 版本号:pod --version2.更新本地cocoapods的spec资源配置信息:pod repo update,提示最新版本可用3.安装pod时,执行sudo gem install cocoapods 的时候报错:You don't have write permissions for the /usr/bin directory.这是因为在OSX系...

2020-05-07 10:58:56 172

原创 Xcode 底部调试工具栏消失,不走断点

一般情况下底部调试工具栏不会突然消失,最有可能是新下载的demo或者接收别人的工程,出现这种异常情况,如果遇到了不必惊慌,也不必重新安装Xcode,按照如下三种方式尝试排查,一般都会解决问题。一,debug模式下,Xcode不走断点解决方法:edit scheme -> info,build configuration 修改为Debug,Debug executable前的对勾...

2020-03-23 19:58:28 892

原创 CocoaPods 安装或者更新第三方库失败 报错/usr/local/bin/git

[!] Error installing GCDWebServer[!] /usr/local/bin/git clone https://github.com/swisspol/GCDWebServer.git /var/folders/cs/7ct14gxn00nbwdss3qb_m1cw0000gn/T/d20200316-4781-1i826cx --template= --singl...

2020-03-16 14:29:00 580

原创 解决cocoapod版本低的问题

在开发过程中,如果更改了工程名字,就需要更新pod,替换掉原来的pod,这时,如果工程自带pod版本高于我们自带版本的时候,在终端执行pod install 时,会出现诸如下方警告代码The version of CocoaPods used to generate the lockfile (1.5.3) is higher than the version of the current exe...

2019-11-14 16:18:21 181

原创 iOS开发 获取父控制器

- (UIViewController *)getFaterVC { for (UIView* next = [self superview]; next; next = next.superview) { UIResponder *nextResponder = [next nextResponder]; if ([nextResponder isKi...

2019-11-11 11:04:32 260

原创 iOS 移除pod微信微博后operator delete(void*) 和 operator new(unsigned long)的爆红解决办法

首先看问题样式 如下图:解决办法:按图依次添加两个库,库名分别为 libc++.tbd 和libz.tbd添加完成后 command + shift +k clean一下,爆红消失,运行成功。...

2019-09-05 10:46:45 118

原创 模仿支付宝芝麻信用 绘图 多种因素占比多边形

开发中涉及到了绘制图形,实现用多边形展示各个数值的占比,这种情形在支付宝芝麻信用中用到,实际并不复杂,本质就是确定各个点的坐标,然后进行连线。直接上代码如下:运行效果图其中需要注意以下几点:1.确定好中心点,本代码中的中心点即为父视图的中心2.确定好第一个绘制点的坐标,是以中心点为参照标准,在x轴和y轴上进行加减(正负号由弧度值决定)3.第一个绘制点 用CGCon...

2019-08-30 17:49:46 69

原创 iOS钥匙串的使用

通常情况下,IOS系统用NSUserDefaults存储数据信息,但是对于一些私密信息,比如密码、证书等等,就需要使用更为安全的keychain了,keychain里保存的信息不会因App被删除而丢失。所以,可以利用这个keychain这个特点来保存设备唯一标识。使用keyChain,我们需要导入Security.framework,keychain的操作接口声明在头文件SecItem.h里...

2019-07-28 17:03:27 514

原创 xcode升级后,添加模拟器,出现不匹配的爆红情况

本人机器提示语如下:/Assets.xcassets:-1: Failed to find a suitable device for the type IBSimDeviceTypeiPad2x (com.apple.dt.Xcode.IBSimDeviceType.iPad-2x) with runtime iOS 12.4 (12.4 - 16G73) - com.apple.CoreSi...

2019-07-25 11:34:08 491

原创 iOS开发中向iPhone模拟器中添加视频资源

1.添加单个视频资源运行一下代码: NSString *path=[[NSBundle mainBundle] pathForResource:@"视频名称" ofType:@"mp4"]; if(UIVideoAtPathIsCompatibleWithSavedPhotosAlbum(path)){ UISaveVideoAtPathToSavedPho...

2019-06-17 19:31:43 1619

原创 自定义 UITableViewCell 选中时颜色的设置

1.系统默认的有三种颜色cell.selectionStyle = UITableViewCellSelectionStyleNone;cell.selectionStyle = UITableViewCellSelectionStyleBlue;cell.selectionStyle = UITableViewCellSelectionStyleGray;cell.selecti...

2019-05-30 17:48:01 179

原创 xib添加约束按钮工具栏不显示的问题

最近Xcode更新到10版本,创建了一个xib, 对控件添加约束的时候,右下方操作按钮入口不见了,不知道为什么苹果自动给取消了,如下两个截图,可以帮助你解决问题。原始状态:勾选后 操作入口即可显示:希望能帮助到各位友友...

2019-05-14 10:07:36 1867

原创 苹果手机修改定位方法

1.用Xcode创建一个工程2.桌面创建一个xml 文件,格式修改为gpx,例如gps.gpx3.文件内容如下:<?xml version="1.0" encoding="UTF-8" ?><gpx version="1.1" creator="GMapToGPX 6.4j - http://www.elsewhere.org/GMapToGPX/" ...

2019-04-30 15:09:36 6791 5

原创 Mac系统恢复以及Mac键盘快捷键 官方方法

【链接】如何通过macOS恢复功能重新安装macOShttps://support.apple.com/zh-cn/HT204904【链接】Mac键盘快捷键https://support.apple.com/zh-cn/HT201236

2019-04-19 10:36:28 2752

原创 iOS企业包打包上传与更新

1.创建好企业包所需要的证书2.打包Archive导出,选择Enterprise类型,默认支持所有设备,下一步记得底部勾选,如图所示接着:填写ipa包的信息最后,导出两个文件,一个是plist文件,一个是ipa文件,上传到自己的服务器前端给一个下载网页,点击下载触发按钮,就可以下载到本地进行安装更新的方式:方式一:ipa包打包好放在线上,客户端写好点击更新的接口,...

2019-04-19 10:20:55 433

原创 Mac系统升级中途断电/关机,升级/开机失败的恢复方法

最近Mac mini 系统升级,从10.13升级到10.14 macOS Mojave,下载数据包用了一夜,早晨来点击安装,足足等了半个小时,进度条进行三分之一就不动了。情急之下强行关机,再开机的时候就提示失败,如图:此时关机,按一下步骤操作:1,同时按住command + R不松手,再按一下开机键松手,等待桌面显示进度条的时候双手都松开,等待进入恢复提醒页面2,页面出现后有四个选...

2019-04-18 19:40:35 7647

原创 iOS 使用 Web Clip 创建桌面快捷方式(2019年)

经过两天的研究,终于解决了总监分配的这个不常用的需求:通俗点讲,就是自己制作一个描述文件,包含icon,名称,和跳转链接WebClip:iOS平台下的一种配置文件,可以在iPhone/iPad桌面上生成一个跟普通应用图标一致的快捷方式,点击后可快速访问该网页。在外观上看起来跟原生应用图标完全一致。使用场景(需求)如下:通常采用WebClip来帮助用户保存一些需要经常访问的网址,例如小...

2019-04-17 18:01:32 12276 6

原创 真正解决升级Xcode10编译bug的好文章

问题1 报文件重复File–> Workspace Settings –> Build System 将New Build System 修改为 Legacy Build System问题2 找不到libstdc++.6.0.9Xcode9中的libstdc移动到了Xcode10对应目录下,clean几下。步骤如下:点击链接,下载libstdc609zip...

2019-03-28 20:06:25 116

原创 iOS 使用Xcode打包 archive时四种证书的区别详解

众所周知,我们苹果打包的时候有四个选项可供选择,在此累述一下四种模式的含义:App Store : 用来发布到App Store, 使用发布证书编译。(production) Ad Hoc : 在开发者账号中添加过UDID的设备可以使用,使用发布证书编译。(production) Enterprise : 企业发布,使用企业证书编译。 Development: 在开发者账号中添...

2019-03-19 18:23:13 1628

原创 UIButton同时设置文字和图片的用法

让button上左右顺序显示 文字和图片,需要用到 UIButton的setImage 方法 ,而不是setBackgroundImage方法     UIButton*btn= [UIButton buttonWithType:UIButtonTypeCustom];     [btn setTitle:@“标题”forState:UIControlStateNormal] ;     ...

2019-02-12 14:00:21 324

原创 用Block对数组进行排序

 不可变数组的方法:- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr可变数组的方法 :- (void)sortUsingComparator:(NSComparator)cmptrNSComparator是利用typedef定义的Block类型typedef NSComparisonRes...

2019-01-19 15:52:59 102

原创 iOS换行取整的几种算法

1.直接转化float f = 1.5;int a; a = (int)f;NSLog("a = %d",a);输出结果是1。(int)是强制类型转化,丢弃浮点数的小数部分。2.向下取整float f = 1.6;int a;a = floor(f);NSLog("a = %d",a);输出结果是1。floor()方法是向下取整,取得不大于浮点数的最大整数,对于正数...

2019-01-17 17:36:46 174

原创 iOS避免Block引起循环引用的标准处理方式

首先:在工程的Prefix.pch的文件中直接(不推荐)或在其导入的头文件中间接写入以下宏定义: //----------------------强弱引用----------------------#ifndef weakify    #if DEBUG        #if __has_feature(objc_arc)        #define weakif...

2019-01-09 16:05:01 216

原创 苹果审核被拒的原因分析

ios开发之--那些被苹果拒绝上架的原因 https://www.jianshu.com/p/e4d5e894e5c0总结App被苹果拒绝的N种原因_持续更新...https://www.jianshu.com/p/37c47af067e3App Store 审核被拒 2.3.1,求解决方法https://ask.csdn.net/questions/660411App...

2018-12-27 15:36:44 603

转载 苹果app 充值/内购情况分析

关于ios平台下的app的充值规则:平台的充值的要求和规范 针对要求目前存在的设计 根据产品的付费属性设计平台的充值要求和规范IAP(in-app purchase),是苹果购买虚拟物品和服务的一套交易系统1.1 适用范围在App内需要付费使用的产品功能或虚拟商品/服务,如游戏道具、电子书、音乐、视频、订阅会员、App的高级功能等。1.2 IAP类型如前面说的,I...

2018-12-20 11:50:21 654

原创 iOS开发中UIImageView逆时针旋转,并得到旋转后的图片

很多小伙伴会用系统的动画旋转,但都是顺时针的,但是开发中有些场景需要用到逆时针旋转效果更好,比方说tableView的 展开/收起 指示箭头方向的变换,如果是顺时针复位,就会显得特别别扭。以下一段代码可以解决问题:此处的玄机在于:1.系统认定的旋转都是以原始位置为起点,如果想用 前后两行代码里角度用正负号来实现逆时针旋转,就大错特错了,你会发现它指向是轴对称的。2.关键在于用999...

2018-12-11 10:27:06 523

原创 直接上代码,直观体现setValue: forKey 和 setObject: forKey 的区别

话不多说,还是直接上代码吧,如下图:查阅网上资料,99%的人都总结为:// setobject中的key和value可以为除了nil外的任何对象 setValue中的KEY只能为字符串 value可以为nil也可以为空对象[NSNull null]恕我愚昧,不敢苟同这么粗陋的结论。以上代码实践证明:除了绿色部分三行代码运行会崩溃以外,其他所有写法都可正常运行。本人通常...

2018-10-31 18:18:54 179

原创 NSMutableDictionary 和 NSDictionary的区别与用法大全

NSDictionary初始化新字典,新字典包含otherDicNSDictionary *dic = [NSDictionary dictionaryWithDictionary:otherDic];以文件内容初始化字典NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:path];       N...

2018-10-31 16:24:56 1314

原创 iOS中 KVC和KVO的理解和用途

KVC(Key-Value Coding)KVC,即是指 NSKeyValueCoding,一个非正式的 Protocol,提供一种机制来间接访问对象的属性。一个对象拥有某些属性。比如说,一个 Man 对象有一个 name 和一个 age 属性。以 KVC 说法,这个Man 对象分别有一个 value 对应他的 name 和 age 的 key。此时就涉及到 valueForKey ...

2018-10-31 14:45:37 388

原创 iOS中nil、Nil、NULL和NSNull的理解和用法详解

nil这个也是条件编译的,那么对于我们Objective-C开发来说,nil就代表((void *)0)。我们使用nil表示Objective-C对象为空,如NSString *str = nil。我们给对象赋值时一般会使用object = nil,表示我想把这个对象释放掉;或者对象由于某种原因,经过多次release,于是对象引用计数器为0了,系统将这块内存释放掉,这个时候这个对...

2018-10-30 11:20:03 219

原创 Mac 电脑清倒废纸篓提示“操作无法完成,因为项目“xx”正在使用” 解决办法大全

如果不能完全彻底清空废纸篓的文件,可以逐步尝试以下几种方法:1.点击"废纸篓 Trash" 在Finder中打开, 然后选择需要清除的文件, 按住 "Option" 键之后点击 "清空 Empty " 按钮.2.终端命令,打开终端,输入: sudo rm -rf ~/.Trash/   这个操作将会删除你所在用户下的 "废纸篓目录 Trash Directory". 输入完成后,回车,按提...

2018-10-24 14:15:18 15696 4

原创 Mac 更改用户名后丢失管理员权限的补救办法法(附带修改用户名的正确步骤)

今天发现自己的Mac mini的用户名太长了,修改后发现原来的管理权限没有了,自己变成了普通用户,再点解锁的时候。发现需要输入管理员的名字和密码,甚至删除Xcode都需要输入,倒腾了半天,终于整理出一份行之有效的恢复方法,仅供参考:关机,待屏幕完全黑屏后,摁下开机按钮后,迅速按下command+s(不要等到屏幕开始亮起,加载画面的时候再摁),会进入终端terminal加载的状态,等10秒钟左右...

2018-10-11 18:08:52 6253

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除