- 博客(44)
- 收藏
- 关注
原创 iOS app切换后台时添加模糊遮罩层
在 App 进入后台后 在 主window上添加一个 UIVisualEffectView。此处只介绍 在iOS13后 SceneDelegate 下的操作。如果没有SceneDelegate ,只有AppDelegate。仿 支付宝 退出后台后,App整个 增加模糊遮罩层。添加相对应的代码即可.
2023-12-08 17:27:49
1631
原创 iOS苹果内购(详细步骤)
逻辑: 先通过后端的接口获取到商品的产品ID,然后在页面中发起购买请求,这个请求是向App Store发出的,整个过程不用与后端交互,等结果返回后,将支付凭证发给后端即可.1.第一步,先到 App Store Connect 中 的 协议部分,去填写信息,(这部分一般法务去解决)注意: 在未审核通过之前,这些商品,均是沙盒测试环境下的,支付并不会涉及金额交易,而且后端可以查询到支付信息。(7)审核信息就是,商品在App 中的页面位置截图,以及描述。(2)设置付费协议,添加账户,(2)设置内购项目类型。
2023-11-27 17:47:04
3629
原创 Runloop 的五种mode
模式类似于跑道,一个runloop同时只能在一个跑道上进行,并且模式有优先级, UITrackingRunLoopMode是UI模式,是优先级最高的模式,当runloop遇到事件的时候,会根据事件指定的模式,去切换跑到,UITrackingRunLoopMode的优先级最高,所以就切换到了这个模式上,这时候其他模式下的事件就不会被执行.场景: 当一个页面中添加了UIScrollView 同时还有一个定时器的时候,当UIScrollView 滑动的时候, 定时器是不工作的,
2023-08-08 15:34:05
1339
原创 Xcode(14.3)运行项目报错:File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault
报错:解决办法:1、目录解压后复制到指定目录路径:
2023-08-07 22:26:52
7629
原创 Mac M2 Ventura(13.3) 新机 安装Cocoapods
因为是新机,内置的ruby版本是(2.6.0)太低,会报错。所以需要安装新的ruby版本。然后安装 ruby3.2.2。5.更新配置,并验证。6.最后直接安装即可。
2023-08-07 22:21:02
2399
转载 iOS: UIBezierPath简介及静态图形实现
UIBezierPath介绍基本介绍:UIBezierPath可以用来创建矢量的路径和图形,使用此类可以定义各种图形。我们用直线和弧形的组合来创建复杂的图形。每一个直线段或者曲线段的结束的地方是下一个的开始的地方。每一个连接的直线或者曲线段的集合称为subpath。一个UIBezierPath对象的完整路径包括一个或者多个subpath。UIBezierPath有两种实现方法:1.使用CAShapeLayer与UIBezierPath配合画出一些想要的图形 。示例代码如下:UIBezi
2020-06-03 19:00:59
773
1
转载 最全面的 iOS 断点调试
作为一名程序猿,编码能力是赖以生存的基础。编码是个人逻辑的提现,正所谓「智者千虑,必有一失」,几乎没有人能够保证自己的程序完全正确,因此在编程工作中,代码调试工具显得异常重要。Xcode 中集成了调试工具神器 lldb ,利用它能够轻松发现代码中隐藏的错误。本篇文章对其做一个全面的介绍。Xcode 中添加断点十分简单,单击左侧代码行,出现蓝色标签,就是添加了一个断点:接下来,看一下断点的晋级操作:1 ctrl + 断点/右键断点,调出断点编辑菜单:点击 Edit Bre...
2020-05-12 18:02:19
726
原创 iOS 利用CocoaHttpServer搭建手机本地服务器
1.导入第三方文件 (可以通过github下载)2.导入所加载的html资源(切记此处需要选择绝对路径)3.在Appdelegate中开启服务,设置端口号:#import "HTTPServer.h"//本地服务器@interface AppDelegate ()/**本地服务器*/@property (strong, nonatomic) HTTPServer...
2020-04-28 17:19:24
1794
原创 Mac中禁用向日葵(Oray)控制端自启动
由于Mac端的向日葵控制端APP,没有将自启动配置文件放入用户文件夹中,所以在系统偏好-用户与群组-登陆项里面,是看不到Oray的自启动选项的。而APP本身又没有可以勾选是否开机启动的地方,看过有人在官方论坛上问过,向日葵客服说没有加这个功能,这完全就是在推脱。通过个人试验,我们完全可以自己通过命令行的方式,禁用掉自启动选项。需要运行如下命令:cd /Library/Launch...
2020-04-20 21:05:31
3715
2
原创 自定义设置 View 四个角的圆角 以及边框的设置
使用贝塞尔曲线typedef NS_OPTIONS(NSUInteger, UIRectCorner) { UIRectCornerTopLeft = 1 << 0, UIRectCornerTopRight = 1 << 1, UIRectCornerBottomLeft = 1 << 2, UIR...
2020-01-08 19:13:28
766
原创 Pytharm 使用 报错以及解决办法 (持续更新)
1.Pycharm tab和空格报错Error:inconsistent use of tabs and spaces in indentation pycharm在缩进pycharm中不一致地使用制表符和空格解决方法是,选择菜单栏:Edit -> Convert Indents -> To Spaces...
2019-11-21 18:28:55
897
原创 发布APP Store 步骤以及遇到的问题
推荐看这个,写的很详细,我就没必要献丑了https://www.jianshu.com/p/e5ac7b05750a问题1.Xcode报错误信息:No account for team "QMP96B5DPW". Add a new account in the Accounts preference pane or verify that your accounts have ...
2019-11-15 15:18:18
872
原创 Beyond Compare在Mac OS系统下永久试用 (亲测可用,有详解)
一、原理Beyond Compare每次启动后会先检查注册信息,试用期到期后就不能继续使用。解决方法是在启动前,先删除注册信息,然后再启动,这样就可以永久免费试用了。二、下载首先下载Beyond Compare最新版本,链接如下:https://www.scootersoftware.com/download.php三、安装下载zip解压 完成后,可直接移动到Applic...
2019-10-17 16:51:59
7500
18
转载 iOS 几种常用的 crash log 崩溃信息调试方法. (转载)
前言:crash log 对 定位崩溃问题 ,并且不容易复现,尤其是及时对appstore 上正在运营的 app 的迭代改进来说 非常重要. 1 crash两种情况1.1 测试环境下 追踪bug1.2 App Store 上应用 追踪bug 我们主要讨论在App Store 上应用 追踪bug 的情况2获取crash log信息途径2.1自己收集,做错误分析 错误趋势: 收...
2018-06-22 14:44:57
3323
转载 跳转系统设置以及设置以下的页面 ,url
App-Prefs:root Settings -> About App-Prefs:root=General&path=About Settings -> Accessibility App-Prefs:root=General&path=ACCESSIBILITY Settings -> Autolock App-Prefs:root=DISPLA...
2018-06-01 16:38:26
968
2
转载 JSONModel解析数据成Model
JSONModel, Mantle这两个开源库都是用来进行封装JSON->Model的, 想想看, 直接向服务器发起一个请求,然后回来后,就是一个Model, 直接使用, 这是一个多么美好的事情。 感谢GitHub的开源精神。那我们开始吧。 先说说这两个的差别。这两个使用的方法其实都差不多, 详细的使用方法请直接GitHub上找, 还是比较简单地。 就我个人来说
2017-08-03 16:34:25
388
原创 X-code 真机运行包的错误以及解决办法(逐步完善中)
1.原因是demo的Bundle id 与 我们新建的target的Bundle id 不能一致,他们是相互独立的解决办法:修改target的bundle id ,但是出现"This app contains an app extension with an illegal bundle identifier. App extension bundle identifiers m
2017-08-01 15:37:14
803
转载 iOS 多语言版本的开发(三)
转载自:http://www.devashen.com/blog/2016/01/18/localized03/iOS 多语言版本的开发(二) 中我们实现了如何让用户自己去切换系统语言的功能,我们还写了Demo 以供辅助学习;但是,继以上两篇文章都是建立在项目刚刚启动或启动不久,项目中存在的中文字符串还不是很多,手动改起来也还可以接受; 那么问题来了,如果项目已经竣工或者已经迭代几
2017-07-13 16:53:47
444
转载 iOS 多语言版本的开发(二)
转载自:http://www.devashen.com/blog/2016/01/15/localized02/iOS 多语言版本的开发(一) 中我们完成了让应用跟随系统语言进行切换,而用户自己却不能切换的功能,也基本上算是实现了多语言版本;可是,对于某些应用来说,实现跟随系统语言切换的同时, 也想要实现让用户自己选择应用语言版本的功能;针对这种情况,利用这篇文章来写写如何让用户自己切
2017-07-13 16:50:58
689
转载 iOS 多语言版本的开发(一)
转载自:http://www.devashen.com/blog/2016/01/14/localized01/开发多语言,一般有两种情况1、App还没有开始写,这个时候创建一个多语言版本,很是容易,然后再写代码的时候稍微留意下哪里需要保持多语言就行了;2、App已经上线了,而且之前没有任何的为开发多语言准备过,这时候Boss让开发多语言版本,这下你就苦逼了,想想项目中长长短短
2017-07-13 15:33:49
631
原创 JSONModel 的使用
JSONModel 下载地址:https://github.com/jsonmodel/jsonmodel1.导入文件夹:JSONModel2.导入框架:SystemConfiguration.framework;3.新建类,继承自JSONModel4.按照所需要的条件属性;5.是用方法:UUModelAppInfo *model = [[UUModelA
2017-07-13 11:35:02
506
原创 for in、经典for循环和EnumerateObjectsUsingBlock
for in、经典for循环和EnumerateObjectsUsingBlock 的比较1.对于集合中对象数很多的情况下,for in 的遍历速度非常之快,但小规模的遍历并不明显(还没普通for循环快)2.Value查询index的时候, 面对大量的数组推荐使用 enumerateObjectsWithOptions的并行方法.NSArray *array = [[NSArr
2017-07-12 17:27:04
488
原创 数据库FMDB的使用
讲之前先请大家下载一个demo,封装的很好,很好用的一个类;https://github.com/gaojunquan/JQFMDB接下来我要讲的就是以这个为基础的;1.首先呢先导入两个文件夹:先导入文件 FMDatabase(注:这个可以从github上下载)和JQFMDB(这个是一个封装的比较完好的类);//读取数据库中应用列表信息//获取Do
2017-07-12 15:08:28
920
转载 iOS封装功能生成 .framework
如果你想将你开发的控件与别人分享,一种方法是直接提供源代码文件。然而,这种方法并不是很优雅。它会暴露所有的实现细节,而这些实现你可能并不想开源出来。此外,开发者也可能并不想看到你的所有代码,因为他们可能仅仅希望将你的这份漂亮代码的一部分植入自己的应用中。 另一种方法是将你的代码编译成静态库(library),让其他开发者添加到自己的项目中。然而,这需要你一并公布所有的公开的头文件
2017-06-29 15:43:04
752
转载 iOS如何生成.a文件
首先来谈谈为何要使用.a文件 Objective-c语言有.h .m 文件组成。静态库可以将 .m文件封装成一个.a文件,第三方应用程序只需要拿到这个.a文件和代码对应的.h文件即可使用静态库中封装的方法。IOS静态库适合去制作第三方提供的SDK。第一步1.首先创建一个新的工程,选择Framework&:,在选择Cocoa Touch Static Library 工程名自己定义
2017-06-29 14:05:53
471
原创 ios 比对应用版本号,确定是否需要显示更新
//将版本号按照.切割后存入数组中//假设:NSString * local_version =@"1.2.3"; 手机上app的版本; NSString * app_version =@"1.1";最新的版本号; NSArray *localArray = [local
2017-06-19 15:10:02
865
原创 x-code 创建pch文件,
1.) 打开你的Xcode工程. 在Supporting Files目录下,选择 File > New > File > iOS > Other > PCH File 然后点击下一步;2.) 假设你的项目名称为TestDemo, 你的PCH 文件的名字建议为TestDemo-Prefix.pch,然后创建;3.) 选择 PCH 文件(文章的示例文件为 TestDe
2017-06-14 19:48:54
408
原创 self.navigationController.navigationBarHidden带来的坑
self.navigationController.navigationBarHidden使用这个语句进行隐藏的时候,在两个ViewController切换的时候,尤其是在两个ViewController中一个显示一个不显示的时候,会出现navigationBar,隐藏时机不对;改为以下代码即可如:A 为隐藏Navigationbar Push B为不隐藏的。A中:-(
2017-06-07 17:52:04
2292
原创 Xcode 【Xcode中关于自定义代码块的使用和删除】
在Xcode的右下角,有一个两个大括号组成的图标,这个地方就是自定义代码块了。 platforms如,下图中就是一个for循环的系统自定义代码块,将其拖入到代码区内,就能直接使用,非常方便。下面就是将代码块拖入到代码区之后的样子,和直接写for循环的提示是一样的。当然除了运用编译器定义的代码块外,我们还
2017-06-02 15:58:18
1974
转载 iOS: 使用KVO监听控制器中数组的变化
一、介绍:KVO是一种能动态监听到属性值的改变的方式,使用场景非常广泛,这里我只讲如何监听控制器ViewController中数组的变化。 二、了解:首先我们应该知道KVO是不能直接监听控制器ViewController数组的变化的,需要将数组定义在模型中,然后控制器ViewController持有模型对象,通过该对象才能监听。 三、步骤:在
2017-06-02 15:54:45
2197
原创 引入第三方类文件遇到的问题
1.linker command failed with exit code 1 (use -v to see invocation)中遇到这类问题,先在右边报错的地方点右键, (注:linker command failed with exit code 1 (use -v to see invocation) 我在网上查阅资料的时候,看大这一类报错问题,还有别的错误类型,所以要输出错
2017-05-10 14:25:42
1360
原创 iOS10适配问题,很全的 ^_^
搜集了网上的资料,再整理了一下1、TencentOpenAPI的坑2、私有权限申请的坑,打开相册崩溃之类的3、statusBar的问题4、Xcode8打包,ios7安装后调用[UIImage imageNamed:]奔溃......
2017-05-09 09:53:27
482
转载 开发遇到的问题
cannot create __weak reference in file using manual reference counting解决1:设置项目中的build setting -> Apple LLVM7.1 - Language - Objective C -> Weak References in Manual Retain Release YES解决2:
2017-05-08 17:00:03
1877
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人