- 博客(47)
- 收藏
- 关注
原创 iOS模拟强杀App进程的方法
iOS模拟强杀App进程的方法OC:[[UIApplication sharedApplication] performSelector:@selector(terminateWithSuccess)];swift:UIApplication.sharedApplication().performSelector("terminateWithSuccess")
2023-12-06 10:58:26 465
原创 Xcode14.3.1 真机调试iOS17的方法(无iOS17 DeviceSupport)
第二种就是将iOS17的 Device Support包放到 Xcode14中进行真机调试,但是iOS17的Device Support包需要去网上下载,获取先下载Xcode17从其包中获取再放到Xcode14中。一种是下载新的Xcode15 beta版 (但Xcode包一般比较大,好几个G,甚至上10G,下载速度太慢,安装还会占用内存较大,对于内存较小的电脑就不太实用)调试完后不需要再使用了记得要恢复哦,
2023-09-15 15:04:47 12274 7
原创 TestFlight填写测试信息Beta版App审核信息报错确保联系人电话号码只包含数字,然后重试。
在TestFlight填写测试信息时 Beta版App审核信息报错确保联系人电话号码只包含数字,然后重试。看到这个报错一脸懵逼,我明明电话号码填写就是纯数字啊。更换了浏览器也是无效,后面发现这个错误提示描述有问题,并不是要求只包含数字,而是电话号码要加上区号,例如国内手机号需要在电话号码前加上 +86才行。
2023-09-12 16:45:34 1704
原创 TCP协议为什么建立连接要三次握手,而关连接是四次握手?
因为关连接时可以让连接处于半打开状态而继续传输消息(半打开状态最多可以几天甚至几个月不关,在Linux下永远不会对半打开状态设置超时时间)而在建立连接时,是不允许在半打开状态下就开始发送消息,所以 server 在回复ACK时必须把SYN也发送过来,所以在建立连接时为3次握手。众所周知TCP的一个重要的特性就是它的可靠性,在 tcp 建立连接前需要建立同步序列号(注意序列号不能从0开始)通过握手来建立同步序列号,握手还可以同步 MSS(最大报文长度)还可以同步窗口;
2023-06-13 15:03:04 393
原创 iOS16之后新加的内容
iOS16之后才加入了关于协议一致性的磁盘缓存,而在 iOS 15 的 Swift Runtime 中,findConformanceWithDyld 方法内部并没有 onDisk 方法簇的调用。dyld 关于协议一致性的内存缓存也是在 Swift 5.4 加入的。
2023-04-12 16:52:51 97
原创 常用设计模式
状态模式:对象的行为依赖于它的状态(属性),并且可以根据它的状态改变而改变它的相关行为。迭代器模式:提供一种方法顺序访问一个聚合对象中各个元素,而又无序暴露该对象的内部表示。装饰器模式:在不想增加很多子类的情况下扩展类,动态地给一个对象添加额外的职责。抽象工厂模式:创建一个相关对象的工厂,每个工厂按照钢厂模式提供对象。备忘录模式:保存一个对象的某个状态,以便在适当的时间恢复对象。构建者模式:使用多个简单的对象一步步构建成一个复杂的对象。适配器模式:适配器继承或依赖已有的对象,实现想要的接口。
2022-11-02 14:40:59 169
原创 iOS开发UI模块分类和Mac电脑使用快捷键
控件分类:指示器 (Activityindicator) 提解对话框 (AlertView)按钮 (Button) 日历 (Calendar)相机 (Camera)数据库 (Database) 绘图 (Drawind) 电子书(eBook) 手势交互(Gesture) 引导页 (ntro&Guide View)功能分类:动画 (Animation)音频声效(Audio)图表 (Chart) 游戏引擎 (Cocos2d) 重力感应 (CoreMotion)
2022-11-02 13:59:12 222
原创 iOS16的问题记录
iOS16会有对讲麦克风有噪声呼啸声很大和回声的问题,该问题为iOS系统的问题,已由苹果与iOS16.1系统修复,目前存在问题的系统为iOS16 -- iOS16.1之间的系统,更新到iOS16.1之后即可修复,为系统性的bug。
2022-11-01 14:31:45 304
原创 Xcode14编译iOS11或iOS12报错dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib 解决方案
一看原因发现为image not found,但是项目中也没有用到这个库的image,而且在iOS12.5以上跑没有问题,所以显然不是这个问题,那么应该就。好了(报错是哪个库就加哪个)。例如我是缺少libswiftCoreGraphics,所以加一个libswiftCoreGraphics.tbd 就可以了;那么该问题的解决方案就是缺少那个library就在哪个库的。是这个Library not loaded的问题。
2022-09-27 08:22:16 5495 1
原创 Xcode14 正式版编译报错‘ does not contain bitcode.解决方案
Xcode14 正式版编译报错' does not contain bitcode.You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. file 'xxx' for architecture arm64解决方案
2022-09-16 11:11:36 7211 3
原创 iOS ipa包上传时 ERROR ITMS-90165:报错解决方案
最近打包上传ipa包时,报ERROR ITMS-90165错误;报错:ERROR ITMS-90165: "Invalid Provisioning Profile Signature. The provisioning profile included in the bundle xxx。该问题是由于苹果官方在4月12号时,更新了新的签名审核机制所导致签名报错;解决方法:去apple developer官网,找到对应证书的Profile证书,然后点击一下Edit编辑,然后直接点保存(无需修改什
2022-04-14 16:02:25 687
原创 关于Xcode真机调试iOS14.2设备时候卡在启动页的问题解决方案
由于一不小心将手机升级到最新的iOS14.2后,目前使用的Xcode12.1无法运行,但是在appstore上也没有更新正式版的Xcode12.2,于是去https://developer.apple.com/download/more/下载Xcode12.2Release Candidate版本,找到其iOS14.2的真机调试包,将其加入到当前Xcode的DeviceSupport 中,于是可以完美真机调试了。但是又遇到了一个新的问题,在真机运行时发现app卡在了启动页面,Xcode控制台也没有任何...
2020-11-11 11:56:05 4936 2
原创 iOS使用AFNetworking报错Domain=NSCocoaErrorDomain Code=3840,response Code=-1011 ,http请求报错404解决方法
最近在使用AFNetworking进行网络请求时候出了一个bug解决了很久,打印error 显示Domain=NSCocoaErrorDomain Code=3840,Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed:not found(404)"。一想怎么会404呢。使用的是post请求,请求代码如下: AFHTTPSessionManager *manager = [[AFHTTPSess
2020-09-16 11:46:50 1871
原创 iOS给UITextView添加placeholder
在iOS开发中我们经常会用到UITextField和UITextView,在使用UITextField时系统会自己提供placeholder属性,但是在UITextView则没有,那么如何在UITextView中设置placeholder呢,如下所示:方法一:#pragma mark - 懒加载- (UITextView *)textView { if (!_textView) { _textView = [UITextView new]; _te...
2020-07-20 10:27:14 2259
原创 关于That command depends on command in Target ... script phase Copy Pods Resources报错解决方案
最近在最新的Xcode11.5中编译从Github上下载的老项目,出现一个bug,提示如下:Multiple commands produce '/xxx.app':1) Target 'xxx' has create directory command with output '/Users/xxx/Library/Developer/Xcode/DerivedData/xxx-cbvukcttkoparwddqctpdtspmcov/Build/Products/Debug-iphonesimul
2020-06-05 09:13:56 4817
原创 [!] Unable to find a pod with name, author, summary, or description matching `AFNetworking` 报错
在安装CocoaPods的时候,在一切都安装成功了后,我门一般会是用pod search AFNetWorking 之类的测试代码来检测CocoaPods是否安装成功,但是很多时候在安装完成后,我们测试会出现如下报错:[!] Unable to find a pod with name, author, summary, or description matching `AFNetworki...
2020-04-20 00:08:14 4466
原创 Swift UILabel高度自适应 (UILabel高度和宽度随文本的字数动态适应时,UILabel上下部分会留白无法填充满的问题解决方案)
在项目中使用UILabel时通常需要实现高度自适应,方法就是先计算文本字体的数目然后去计算需要的高度:方法如下:let label = UILabel()label.backgroundColor = UIColor.graylabel.text = "testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttestte...
2019-04-23 11:00:11 3286
原创 RxSwift 实现点击页面任意位置收起键盘
在iOS开发中我们经常需要实现收起键盘操作,一般是在点击页面的空白处收起键盘,常用有两种方法:在代理方法中实现:override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { textFiled.resignFirstResponder() //方法一 se...
2019-04-15 12:27:37 1275
原创 Swift 实现数组中的某个元素置顶
最近项目需求中需要拿到一个list中的某个id 然后将这个id所对应的数据在tableView中置顶。实现思路:方法一:首先遍历数组找到这个id所对应的dictionary存下来,然后在已经delete该id所对应dictionary的数组中将该id所对应的dictionary插入到数组的第一位。具体实现代码如下: let datas = ["aa","b","cccc...
2019-03-18 17:44:43 3067
原创 Swift4.2 实现长按WebView中的图片保存到相册
最近项目中需求需要保存webview中的图片,通过长按来实现弹出提示保存。具体实现如下:注意由于该功能需要往相册存图片,所以需要相册的写权限。需在plist文件中加入Privacy - Photo Library Additions Usage Description 键值对。func addLongPressGes() { //添加长按手势 let...
2019-03-14 16:35:01 710
原创 Swift4.2 计算两个日期之间的时间间隔多少天
由于最近项目需求,需要计算时间的柱壮图进度,通过开始时间,当前时间,完成时间来求取时间进度。思路:通过获取开始时间天数,然后获取完成时间天数和当前时间天数(iOS时间是从1970年还是计数的) 与之相减,然后再计算进度比例进行显示。那么需要获取开始时间与完成时间,当前时间与完成时间之间的时间间隔。主要是使用NSCalendar的dateComponents来实现的:NSCalenda...
2019-03-12 13:53:18 3296
原创 Swift 自定义UISegmentedControl
在项目需求中需要实现如下UI效果(背景色自定义,并且去除segmentcontrol中间的分割线及边框颜色): 实现代码如下:import UIKitclass ViewController: UIViewController { override func viewDidLoad() { ...
2019-03-12 10:27:25 2934
原创 Swift通过正则表达式获取匹配的APP版本号
需求:后台判断当前版本来通知前台弹出更新app提示。实现:获取当前版本号,传入后台,通过后台返回来实现弹框。因为app在发布测试时为区分不同服务器版本,版本号会出现例如 1.0.0.0-test、1.0.0.0-formal 等等格式的字符串,正式release时只能是3位版本号 1.0.0。而后台的检测又是必须要传入4位纯数字版本号(1.0.0.0),所以需要由前台来做处理。当为测试...
2019-03-08 17:45:26 647
原创 关于Xcode控制台一直输出Status bar could not find cached time string image. Rendering in-process. 的解决方案
最近在Xcode9.4.1版本上新建Swift项目时,发现在新建完项目后,运行时会发现控制台会隔一段时间弹出一句Status bar could not find cached time string image. Rendering in-process.说是状态栏在进程渲染无法找到缓存的问题,在网上查了一些资料说是项目中用到了[[UIApplication sharedApplicat...
2018-09-07 14:25:32 5115
原创 Swift关闭textfield键盘的两种方法
在swift开发中我们往往会用到UITextField这个控件,当点击textfield的时候系统会自动弹出键盘,那么往往我们需要在点击空白或者别的地方的时候来让键盘关闭,那么如何实现呢,方法很简单,下面直接代码介绍关闭键盘的两种方法:方法一: textField.resignFirstResponder() //该方法是使其失去第一响应者的方法方法二:...
2018-09-05 15:37:17 4285
原创 Swift开发中如何在UIView中直接实现页面跳转(即如何在子视图中获取其父视图控制器的方法)
在Swift的开发中,实现页面之间的跳转我们都是通过在UIViewController来实现其push方法或者present方法来跳转页面的(即控制器之间的跳转切换),但是往往在开发中我们经常会使用MVC的架构来将页面进行模块化的封装,那么问题来了,我们在将页面模块化成一个一个的UIView的模块时候,往往会在UIView或tableViewCell中的一些例如imageView,l...
2018-08-30 23:54:31 1826
原创 关于iOS使用个推来实现消息推送时出现ld: framework not found FileProvider错误的处理
按照个推的官方文档配置项目时候,出现了如下报错:ld: framework not found FileProvider for architecture armv7clang: error: linker command failed with exit code 1 (use -v to see invocation)找了整个项目都没有发现哪里使用了FileProvider这个基本...
2018-08-13 10:32:38 1658
原创 Mac电脑使用终端安装Homebrew时出现Warning: /usr/local/bin is not in your PATH.
在mac电脑上配置React Native环境时,第一步安装Homebrew包管理器时候出现Warning: /usr/local/bin is not in your PATH.如图:解决方法为在终端输入如下命令: export PATH=/usr/local/bin:$PATH...
2018-06-20 15:40:32 6006
原创 Swift2.0到Swift4.1代码转换中的一些语法改变总结
最近因为项目需求需要对项目代码进行升级,从之前的swift2.0版本升级到swift4.1版本。现将升级过程中遇到的一些语法变化与大家分享一下,希望会对大家有所帮助,Swift 2.0 --> Swift 4.01.self.edgesForExtendedLayout = UIRectEdge.None --> self.edgesForExtendedLayout = UI...
2018-06-20 14:49:13 1356
原创 关于ios11之后使用setBackButtonTitlePositionAdjustment属性后出现导航栏返回按钮下移的解决方法(swift4.1语法)
由于在项目中的需求是要隐藏导航拦返回按钮右边的title,故使用setBackButtonTitlePositionAdjustment属性设置导航栏的全局返回按钮通过改变position的偏移位置来将返回的标题显示在界面之外来实现隐藏,代码如下:UIBarButtonItem.appearance().setBackButtonTitlePositionAdjustment(UIOffset.i...
2018-06-12 15:15:39 4038
原创 Swift4.0 将状态栏的颜色变为白色
由于最近开发中需要将项目的导航栏设置成黑色,所以需要将状态栏的颜色全部都设置成为白色,看了很久都是使用代码来设置,但是按照 UIApplication.shared.statusBarStyle = .lightContent 该方法设置的并没有效果,于是找了很久终于找的了一个很简单的方法,不需要写代码,只需要在info.plist文件中设置就可以了。首先在info.plist文件中将添加...
2018-05-30 15:42:41 2977
原创 ios 国际化使用多国语言(Swift)
在写ios的app时候,有时候需要自己的app能用使用多个地域,这就需要我们的app能够自动的适配语言,根据手机的语言设置,英文的时候显示英文,中文的时候显示中文。本文我将向大家介绍以下如何在code中设置多国语言的切换。话不多说直接上图。1.首先先新建一个文件如图在Resource中点击Strings File 然后将文件名命名为Localizable.strin
2017-06-06 19:41:49 1920
原创 swift textView出现越界的exception
在使用textView这个控件时候需要有时候会出现越界的提示如下:requesting caretRectForPosition: while the NSTextStorage has oustanding changes{520,4}对于这个报错我发现自己的code对字数的限制并没有问题,而且断点无法跟到具体的越界位置,代理方法都走完了之后才出现问题,并且把所有的代理方法都给注释掉
2017-05-11 11:00:30 716
原创 swift 关于背景图片的拉伸与平铺
在ios开发中很多的地方都会需要我们添加背景图片,下面是添加背景图片的方法:一般的情况下我们往往是通过backgroundImage属性来设置背景图片,但是在有的View中没有backgroundImage这个属性,这时候我们可以通过backgroundColor这个属性来添加背景图,具体方法如下:例如:reusableViews.backgroundColor = UIColor(p
2017-05-09 11:17:42 3813
原创 swift封装一个继承UILabel的红色小圆圈用来显示消息的个数
在app中往往会需要去显示一些通知的信息的个数,往往是在图标上面加一个红色的小圆圈,然后在上面动态的显示在消息的个数,就像微信中提示信息的个数一样。效果图如下: 现将如图红色圆圈的中的数字显示样式封装如下:import UIKitclass Info: UILabel { var defaultInsets = CGSize(width: 2, heigh
2017-04-27 16:11:45 839
原创 swift将json数据转换成NSDictionary
swift在使用过Alamofire进行解析的时候,有时候并不会直接解析出数据,而是一些json格式的String。例如:{"name":"zhangsan","age":"12"} 这种类型的数据,这是一个Dictionary类型的数据,但是无法直接强转为NSDictionary类型,因为这只是一个json的String数据,需要对其进行json数据转换。具体转换的代码如下:let draf
2017-04-25 09:22:50 1742
原创 swift压缩图片的方法
在项目中往往很多时候需要实现上传图片,但在对多张图片进行上传时往往会出现内存警告的问题,(当第二次警告时候app就会闪退)这是由于ios默认只给20M的内存。所以要解决这个问题就需要对图片进行压缩上传,下面是我封装的一个压缩图片的方法:static func zipImage(currentImage: UIImage,scaleSize:CGFloat,percent: CGFloat) -
2017-04-24 16:10:32 1904
原创 Swift使用Alamofire上传图片等FormData表单文件的方法
在使用Alamofire这个swift的第三方http请求长传时,一般都是上传一些基本的String等类型的数据,但是在大多数的app中往往需要上传一些例如图片等等的文件,同时需要获取它的success请求成功后的返回值,在这里来给大家介绍一种使用Alamofire上传图片文件的方法。废话不多说,直接上代码:Alamofire.upload(.POST, URL, multipartFormD
2017-04-20 18:18:04 9618 2
原创 可以在Apple官网下载各个版本的Xcode的路径
在ios开发中,有时候不小心删除了当前的Xcode,但这个版本的Xcode不是最新的版本,但是如果去AppStore上面去下载就是最新的Xcode版本,有时候根本不需要最新的Xcode。我们需要以前版本的Xcode。所以我们需要去apple官网去下载。但是在官网中又是会很懵,不知道在哪里去找Xcode的下载,在这里我给大家一个可以下载各个版本的Xcode的路径:https://developer.
2017-04-20 17:46:15 1311
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人