自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 iOS发布证书在钥匙串中显示不被信任

在iOS开发中,我使用突然发现我的电脑发布的证书,在钥匙串中显示不被信任,也无法导出为p12证书。经过排查发现,是钥匙串中一个叫Apple Worldwide Developer Relations Certification AuthorityA的证书过期了,导致。我们只要从官方下载证书,安装到钥匙串中就可以了。

2023-08-09 10:27:56 763 1

原创 iOS开发怎么解决在Tableview上添加的视图和父试图手势冲突。

我们由于业务需要,经常要在Tableview或者CollectionView的cell上添加一些带有手势的子视图,然后添加后会发现子视图的手势会和Tableview(CollectionView)的滚动事件发生手势冲突导致各种bug。那么怎么解决这种冲突呢?//如果接收事件view是UISlider,则scrollview禁止响应滑动。{ //如果不是,则恢复滑动。

2023-08-02 17:57:47 301

原创 【iOS开发解决Tableview(CollectionView)上子视图和父试图手势冲突】

else { //如果不是,则恢复滑动。

2023-06-26 09:58:56 612

原创 Xcode编译静态库时报错:**** is not an object file (not allowed in a library)

对应工程target中找到buildsetting然后搜索库路径-Library search paths,然后确认是否有错误。若果路径错误,找不到库就会报此类错误。然后确定引入的.a库是否真是存在,是否有错误。

2023-03-10 10:55:57 448

原创 Xcode编译项目卡顿

Xcode14控制台报错:warning: libobjc.A.dylib is being read from process memory. This indicates that LLDB could not find the on-disk shared cache for this device. This will likely reduce debugging performance.第三步出现如下弹窗等待自动修复完成即可。第二步重启Xcode运行项目。

2023-02-21 13:32:20 950

原创 iOS开发AppleDeveloper中给别人授权开发者权限后,对方一直显示不了我的开发账号team

后来通过排查发现,我的开发者账号身份是个人不是组织!个人身份的开发者账号不允许多人协作开发,授权的加入的开发者、App管理等均无证书相关权限,所以无法真机开发我账号相关项目,只能使用配置导出证书的方式来让别人开发。这时我们通常要发邮件邀请别的用户为开发者或者app管理就可以开发我们自己的项目了。当然是可以的,我们只需要在Apple Developer中找到“会员详细资格信息”,点击“更新您的信息”(打码的是客户自己的team,我授权的team未显示出来)导致客户无法使用他的账号来协作开发我的代码。

2023-02-17 14:23:14 1891

原创 iOS开发怎么使用Xcode搜索项目中所有的中文

由于我们项目要海外化,客户要求App中不得包含有中文的语言,所以我们需要把项目中所有中文都转换问英语,那么怎么操作呢?swift输入: "[^"]*[\u4E00-\u9FA5]+[^"\n]*?oc输入:@"[^"]*[\u4E00-\u9FA5]+[^"\n]*?通过调研发现xcode支持正则表达式搜索。

2023-02-17 13:45:35 1046

原创 SourceTree 如何忽略已跟踪文件

这时我们需要使用命令$ git rm -r --cached .文件本地路径,移除本地文件追踪,对应文件就不会进入git版本管理了,在修改对应文件就可以点击忽略或者编辑gitigore文件生效啦。

2022-12-30 10:25:28 778

原创 Mac电脑下好用的桌面软件--Irvue

壁纸软件推荐

2022-12-29 10:15:04 535

原创 Fastlane实现一键自动打包(多Target 多开发者账号)

fastlane iOS自动打包

2022-04-11 16:13:21 3437

原创 iOS没有项目工程时,怎么查看手机上app对应日志

在我们日常跟踪app使用时,有时需要查看从appstore下载下来的app对应日志,怎么查看呢?1.使用数据线将手机和电脑连接。2.打开Xcode--Window--Device and Simulations,然后点击Open Console,如图:3.打开控制台,选择要查看日志的设备,点击开始,如图:4.此时,在手机上运行对应app就能看到app的开发日志了。...

2022-02-11 11:09:59 2550

原创 iOS开发Archive打包ipa中包含中文解决办法

Target->Build Seetings搜索product name的值改为$(PRODUCT_NAME)或者改成一个英文名称就可以。如图:

2022-01-17 10:01:58 2009

原创 iOS多target时怎么对InfoPlist进行国际化

国际化InfoPlist文件必须创建名称为InfoPlist.strings的文件,那么多个target时怎么进行国际化呢?一、首先我们在项目根目录创建不同的文件夹对应多个target,然后在对应文件夹下创建每个target对应的InfoPlist.strings如图:二、我们在InfoPlist.strings右侧勾选设置,该文件对应的targetMembership,这样每个InfoPlist.string都会找到对应target的info.plist文件,我们就可以在对应的InfoPlis

2021-07-07 14:45:37 615

原创 关于Xcode打包为Generic Xcode Archive 以及 Xcode打包按钮灰色的解决方法

近日我在项目打包时遇到了无法生成ipa包的问题如图:Archives后生成的是Generic Xcode Archive,且无法上传到APP Store,经过网上查阅资料,发现原因是项目依赖的子工程,有部分文件设置成了Public或者Privacy,我们在有子工程依赖的项目中,打包前一定要确保,子工程Target 中Build Phases选项中的Heades选项中所有文件都在Project里如图:很明显我的项目中有个mssdk的文件是在public中,我把它拽入到Project中,

2020-12-07 09:26:49 1396

原创 iOS 14 适配方案

1、升级XCode后如果模拟器跑不了了,可能需要加一个x86_64架构如图:2、不在cell的contentView上addSubview的会被contentView挡住如果有用cell addSubview 的请替换成cell.contentView addSubview3、IDFA隐私加强IDFA默认关闭,需要向用户申请获取权限,需要在info.plist中明示用户申请权限:key : NSUserTrackingUsageDescriptionvalu...

2020-09-28 10:05:39 673

原创 iOS开发使用AFN来POST格式为form-data的接口

背景:在一次开发中,有一个接口,发生了一下问题,我们按照以往的经验,使用AFN 的post请求来请求接口,把参数设置到字典中,然后传递给post接口的parameters中,如下图:其中bodyParams为要传入的参数字典接口虽然通了,但是一直报参数错误,于是我让后台debug了一下,他们说收到的参数全是nil,后台给发了接口的详细调试信息,如下图:##一看,原来参数都是Form-Data格式,也就是参数都是放到表单里的。于是,我又查阅资料基于AFN重新封装了一个form-data格式的接口,代

2020-07-22 09:39:16 1896 1

原创 Xcode11下,使用Masonry产生大量instance method conflicts with same method from another category 警告(1w+)

产生原因:主要是mastory里view+MASShorthandAdditions,以及NSArray+MASShorthandAdditions,这两个类别,把方法声明和实现都写到.h,文件了,在xcode11里这么写会造成多个target 引入 mastory时产生大量 instance method conflicts with same method from another c...

2020-03-12 11:42:32 1955 2

原创 iOS 13 怎么去掉UITabbar顶部黑线

代码如下: //去掉tabbar黑线,其中self是一个UITabbarController,imageWithColor是由颜色生产图片的方法 if (@available(iOS 13.0, *)) { UITabBarAppearance *apperance= self.tabBar.standardAppearance; apperan...

2019-12-10 11:48:39 1022

原创 Git如何修改已经提交的注释说明

在我们使用git时偶尔会忘了给提交添加注释或者注释写错了,这时怎么修改呢?有两种发生的情形。情形一:已经commit到本地仓库,还没有push到远程解决方法://查看提交文件,里面包含注释和变更内容使用git commit --amend此时会打开最近一次本地commit的信息,此时是以vi编辑器的形式打开啊。我们按下i建进入文本编辑模式,然后把想要修改的提交信息no...

2019-10-28 22:04:00 11152 2

原创 整理总结iOS 13适配遇到的问题

1.UISearchController上的SearchBar显示异常,高度变为只有1px。 解决方法:解决办法是使用KVO监听frame值变化后设置去应该显示的高度。2.iOS13禁止使用valueForKey、setValue: forKey的方式获取和设置私有属性,会引起crash。 解决方法:使用其他方法替换。3.TabBar上设置的红点会偏移到左上方。遍历UITabB...

2019-09-17 10:45:15 3899

原创 iOS 开发中点击tabBar弹出登录界面

以前我实现弹出登录界面是在对应的controller中的viewwillappear里实现,这样做的缺点是,点击要弹出登录界面的tabbar里的contrllor时会先显示对应界面再弹出登录。需求希望在点击切换tabbar的item时就弹出登录,不进入对应界面。实现代码如下:需要实现tabbarController对应的代理方法,遵循代理UITabBarControllerDelegate...

2019-05-14 16:56:55 996

原创 使用gem安装软件(cocoapods fastlane等),报错You don't have write permissions for the /usr/bin directory.

我们是用gem 安装一些插件时,有时会遇到报错You don't have write permissions for the /usr/bin directory.即使我们在安装命令前加上sudo,也不行。这时我们可以使用:sudo gem install fastlane -n /usr/local/bin 这句就可以了,其中fastlane是插件名称,我们安装其他插件也可以这么用。...

2018-09-18 13:40:42 3398

原创 Swift 最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例:输入["flower","flow","flight"]             输出"fl"说明:所有输入只包含小写字母 a-z 。我们采用暴力破解法代码如下:class Solution{          func longestCommonPrefix(_ s...

2018-09-05 12:01:22 196

原创 Swift 求二叉树最小深度

给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],返回它的最小深度  2.我们用递归方法求,求法和求最大深度类似,比较一个节点的左右子节点,如果都不为空的话,取最小的子节点长度,如果一个子节点为空,则最小深度就是另一个子节点到根节点的长度...

2018-08-21 11:24:47 238

原创 Swift 求二叉树最大深度

给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],返回它的最大深度 3 解法一:递归法代码如下:/** * Definition for a binary tree node. * public class TreeNode {...

2018-08-20 10:13:01 326

原创 Swift 对称二叉树

给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。我们使用递归法解决此问题代码如下:/** * Definition for a binary tree node. * public class TreeNode { *     public var val: Int *     public var left: TreeNod...

2018-08-16 14:58:05 285

原创 Swift 相同的树

给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。我们可以采用递归的方法比较代码如下:先定义一个二叉树  //Definition for a binary tree node.  public class TreeNode {      public var val: Int      public va...

2018-08-15 16:24:07 180

原创 Swift 爬楼梯

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例:输入2 输出2 有两种爬发:一次爬2阶,爬一次;一次爬一阶,爬两次解法:最容易想到的是递归,代码如下:class Solution{           func chimbStairs(_n:Int)->Int{...

2018-08-14 14:09:37 5717

原创 Swift 加一

给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例:输入[1,2,3],输出[1,2,4]代码如下class Solution{          func onePlus(_digits:[Int])->[Int]{      ...

2018-08-13 15:19:05 282

原创 Swift 合并两个有序数组

 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。 解法一算法思想是:由于合并后A数组的大小必定是m+n,所以从最后面开始往前赋值,先...

2018-08-08 16:11:34 1461

原创 Swift 最大子序和 - LeetCode

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。解法一:暴力破解法,2重for循环,时间效率O(N^2)class Solution{       func maxSubArray(_n...

2018-08-07 15:22:43 205

原创 Swift 搜索插入位置 - LeetCode

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1: [1,3,5,6], 5 → 2常规方法是遍历数组,在循环中设置查找条件,但是效率不高,这里我们用二分查找的思想实现代码如下:class Solution{       func searchInsert(_nums...

2018-08-06 14:30:21 266

原创 Swift 实现 strStr() 函数。 - LeetCode

给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回  -1。示例:haystack=@"hello",needle=@"ll"输出返回 2class Solution{       func strStr(haystack:String,needle:Strin...

2018-08-02 17:49:08 268

原创 Swift 数组移除元素 - LeetCode

给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例:nums=[3,2,2,3],val=3,执行方法后得到 的新数组是[2,2],长度为2class Solution{...

2018-08-02 16:41:39 4427

原创 Swift 删除排序数组中的重复项 - LeetCode

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例:给定数组nums=[1,1,2],函数应该返回的长度为2,数组为[1,2]采用双指针法class Solution{        func removeDuplicates(num...

2018-08-01 17:38:35 1411

原创 Swift 回文数 - LeetCode

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。思路:反转回文数的一半的数字对比是否相同class Solution {       func  isPanlindrome(_x:Int)->Bool {           var mx:Int = x           当x时负数时不可能是回文数,当x的最后一位数是0时,如果他...

2018-08-01 15:53:13 347

原创 Swift 反转整数 - LeetCode

给定一个 32 位有符号整数,将整数中的数字进行反转。注意:假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231,  231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。示例:输入: -123 输出: -321解决方法:class Solution{      func reverse ( _x:Int )->Int{     ...

2018-07-31 16:36:43 650

原创 Swift 两数之和 - LeetCode

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定nums=[2,7,11,15],target=9,因为nums[0]+num[1]=target=2+7=9,所以返回[0,1].解决方法一暴力破解法:class Solution{     func twoSum(_nums:[Int],_ta...

2018-07-30 11:10:57 653

原创 iOS提审"Potential Loss of Keychain Access.问题

WARNING ITMS-90076: "Potential Loss of Keychain Access. The previous version of software has an application-identifier value of ['A8M9REA9VF.com.xdjy100.xdsxy'] and the new version of software being s...

2018-07-30 10:12:21 2997

原创 ios开发中关于UINavcontroller影响布局的问题

导航栏分为半透明和不透明类型translucent1当导航栏为不透明时:self.navigationController.navigationBar.translucent= NO;视图控制器里的控件布局时都是默认从(0,64)开始布局。2当导航栏为半透明时:(1):视图控制器里面第一个被添加进去的视图是滑动类视图,并且其Frame是整个屏幕大小时,系统会自动调整其contenIns...

2018-07-27 13:40:22 367

空空如也

空空如也

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

TA关注的人

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