自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 搭建Flutter环境-Android license status unknown问题解决

如题,安装Flutter环境,最后执行flutter doctor时出现: Android license status unknown. 按照正常步骤肯定是各种百度,然后按照文章提示执行: flutter doctor --android-licenses 到这来问题来了,出现错误:...

2020-05-26 19:19:37 125 0

原创 #pragma clang diagnostic ignored 忽略警告

在开发过程中,我是比较反感这个⚠️,但是我们的开发离不开它,他能让我们注意一些可能产生错误的地方去修复。在一个阶段完成后,大家都要去处理这个警告的问题,把可能出错的地方修正。在这个过程中,可能会有一些警告,我们能够确定它不会产生影响,并且确认需要这么做的时候。我们就可以使用 #pragma c...

2020-01-15 11:42:36 62 0

转载 使用RunLoop优化TableView

最近在整理资料的时候看到了以前写的代码,在此整理下,用到的时候可以方便查看。 对 RunLoop 不熟悉的可以查看下《iOS官方文档》和这篇博客《深入理解RunLoop》,讲述的淋漓尽致,相信会对你有很大的帮助。 一、使用TableView时出现的问题: 平时开发中绘制 tableView 时...

2019-12-08 02:45:16 41 0

转载 优化UITableViewCell高度计算的那些事

戳原文:戳我看原文 我是前言 这篇文章是我和我们团队最近对UITableViewCell利用AutoLayout自动高度计算和UITableView滑动优化的一个总结。 我们也在维护一个开源的扩展,UITableView+FDTemplateLayoutCell,让高度计算这个事情变的前所未有...

2019-12-08 02:37:08 32 0

原创 NSArray NSMutableArray mutableCopy copy

总结: [NSArray copy] 浅拷贝 还是那个对象 [NSArray mutableCopy] 深拷贝 得到NSMutableArray [NSMutableArray copy] 深拷贝 得到 NSArray [NSMutableArray mutableCopy] 深拷贝 得到 NS...

2019-11-21 09:35:47 55 0

转载 Static关键字理解(iOS)

Static修饰局部变量: 当static关键字修饰局部变量时,只会初始化一次。 例 1: @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.view.ba...

2019-11-20 16:23:40 31 0

原创 解决:工具链无效,app必须建立于通用版本(系统beta版本打包app)

一位朋友遇到这样的审核被拒: Invalid Toolchain. New apps and app updates must be built with the public (GM) versions. 查了一些资料,先说下原因: 打包时候, iTunes Connect会读取这个值,从...

2019-09-10 11:48:36 94 0

转载 组件化方案探究

前言 这篇文章主要是我近段时间针对市面上存在的一些组件化方案的调研之后,再经过自己的反思和总结写的,博客中部分文字和图借鉴自下面的博客。各位看官大爷就当做一篇读书笔记来看即可,主要是参考了如下几篇文章,另外零零散散的也看了一些其他资料,但是大多都是相似的 蘑菇街组件化之路 iOS...

2019-08-28 11:13:02 82 0

原创 iOS13 适配 附:获取DeviceToken的Swift版本

iOS 13 如期而至,虽然正式版还没出来,但是适配工作可以开展起来啦。在适配 iOS 13 过程中,遇到了如下一些问题。 1. UITextField 的私有属性 _placeholderLabel 被禁止访问了 遇到的第一个崩溃是修改UITextField的placeholder的颜色,历...

2019-08-13 10:21:13 3662 0

原创 Can't connect to local MySQL server through socket ‘/tmp/mysql.sock'

brew install mysql后 一致报这个错误,然后根据网上的教程一直找mysql.sock文件,结果根本没有这个文件。 然后懵逼ing 折腾半天,原来是sqlsever没起来,醉了(ps:mysql.sock文件是sever起来后mysql程序自动生成的文件) 安装完毕以后不应该...

2019-07-29 17:00:09 75 0

转载 swift4.0 throw错误处理

对于大部分现代化面向对象的编程语言都拥有结构化的错误处理语法特性,swift也不例外。当我们在一个方法或函数中实现某些功能时,如果遇到错误的用户输入则可能导致严重的异常问题,此时我们可以选择通过抛出异常的方式,将此错误送给函数调用者。 我们常用 try-catch 结构,不过在swift编程...

2019-07-22 18:33:15 221 0

转载 NSURLSession htpps证书设置

NSURLSession http转Https 1.设置代理 NSURLSession *sesson = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguratio...

2019-04-09 16:34:36 148 0

原创 iOS 获取变量属性 :修改UIAlertController样式

iOS8 之后系统把UIActionSheet和UIAlertView合并为了UIAlertController,使用就不比多说了,但在使用的过程中发现样式是固定的,点进去也未发现可以提供更改多样式的属性,所以只能使用KVC在运行时动态访问和修改对象的属性。 但在使用过程中需要知道属性类型对应的...

2019-04-04 13:43:29 133 0

原创 swift3.0 enumerated 遍历数组 拿到下标和元素以及反向遍历

1.要遍历数组同时拿到下标值和元素,可通过元祖进行遍历 1.1 定义数组一个字符串数组如下 let array: [String] = ["a","b","c","d"] 1.2 利用元祖进行遍历 for...

2019-04-04 11:32:36 765 0

原创 Xcode10 添加自定义代码块

Xcode10添加代码块,发现原来位于右下角的那些东西 都跑到了右上角靠里的位置,比如 这里是代码块 --------------------手动分割一下-------图太大了----------------- 切换到sb的话 就是原来的控件部分了 那么 控件还好说,不用咱们添加...

2019-04-03 11:07:23 93 0

转载 loadView、viewDidLoad及viewDidUnload的关系

标题中所说的3个方法,都是UIViewController的方法,跟UIViewController的view属性的生命周期息息相关。接下来我会一一阐述它们的作用以及它们之间的联系。 loadView 1.什么时候被调用? 每次访问UIViewController的view(比如control...

2019-04-01 18:21:48 36 0

转载 iOS webView播放视频禁止弹出

折腾了半天,各种百度,都是说在html的video中加入webkit-playsinline属性,可是怎么都不起作用,后来去Apple查看官方API,人家已经说的很明白了,真是一顿头大啊。 You must set this property to play inline video. Set...

2019-03-20 16:35:13 1345 2

转载 关于对象与内存分析

(一)OC对象在底层中的布局 我们平时编写的Objective-C代码,在底层都是使用C/C++实现。 即Objective-C -> C/C++ -> 汇编语言 -> 机器语言。 我们定义个NSObject对象 NSObject *object =...

2019-01-16 17:53:26 53 0

转载 setNeedsLayout和layoutIfNeeded

解释 更新布局总会重新触发layoutSubviews方法。 layoutSubviews 继承于UIView的子类重写,进行布局更新,刷新视图。如果某个视图自身的bounds或者子视图的bounds发生改变,那么这个方法会在当前runloop结束的时候被调用。为什么不是立即调用呢?因为渲染...

2018-12-18 16:54:59 113 0

原创 Swift 中的 var `property`

今天又发现了一个Swift愉快的codingTip: 就是Swift  中的  var `property` 在OC中对系统关键字的处理是比较繁琐的,被系统占用的名字是不可以使用的 but,Swift只需要加一个符号`就可以搞定

2018-11-27 19:03:59 132 0

转载 iOS 中的NSLock、 NSRecursiveLock、 NSCondition

摘要:多线程编程中经常会碰到多个线程访问一个变量的问题,那么我们先来熟悉下我们跟线程相关的修饰符nonatomic和atomic一搜索,会有很多文章;但是这些文章有一个共同的特点那就是nonatomic多线程不安全和atomic多线程安全如何来判断线程安全或不安全?对于小公司在大多数项目说的简单点...

2018-11-23 18:20:08 107 0

转载 Swift - OC Tips

最近在尝试oc和swift的混编,一是:swift是大势所趋,终究是要学习的。二是:项目目前架构是oc架构,全部重构为swift也不现实。下面是混编中遇到的一些问题和总结: 1.在oc项目中第一次创建swift文件的时候,会弹框提示是否要创建桥接文件。当然要创建了,否则还要自己动手创建和配置...

2018-11-14 11:33:07 71 0

原创 Swift&iOS12 获取ssid的问题

废话不说,直接上代码: private func fetchNetInfo() -> [String : AnyObject]{ let interfaceNames = CNCopySupportedInterfaces() ...

2018-10-30 14:34:25 345 0

转载 swift 异常捕获try catch的使用

新的异常捕获机制更新于 WWDC 2015上发布的新的Swift2.0,异常的try-catch机制有助于我们更快的定位出错原因所在,此处简单说明下try-catch机制的用法.   1.定义枚举异常值     首先我们可以创建自己的异常枚举值,这要实现ErrorType协议,只不过这个协议...

2018-10-25 18:11:11 268 0

转载 Swift 泛型

泛型能够让开发者编写自定义需求已经任意类型的灵活可用的的函数和类型。能够让我们避免重复的代码。用一种清晰和抽象的方式来表达代码的意图。 1.泛型解决的问题 下面是一个非泛型的例子 func swapTwoIntValue(inout a:Int,inout b:Int){ //使用...

2018-10-25 15:11:14 48 0

转载 Swift 浅谈Struct与Class

  讨论Struct与Class之前,我们先来看一个概念:Value Type(值类型),Reference Type(引用类型): 1. 值类型的变量直接包含他们的数据,对于值类型都有他们自己的数据副本,因此对一个变量操作不可能影响另一个变量; 2. 引用类型的变量存储对他们的数据引用,因...

2018-10-25 10:51:52 66 0

原创 Swift4.0 获取类名 类名.self

今天完善夫特架子,导航里面用夫特获取类名的时候,突然很懵逼,居然木有。类(OC),只好自己研究下了,写了一个获取类名的扩展名,后来发现有个.self的方法,也尝试了下哈,看下图 print(UIScreenEdgePanGestureRecognizer().ClassName) print(...

2018-10-19 17:15:36 3301 0

转载 NSAttributedString文本属性设置的使用

// 设置字体属性NSFontAttributeName,默认值:字体:Helvetica(Neue) 字号:12 NSMutableAttributedString *textFont = [[NSMutableAttributedString alloc] initWithString:@...

2018-10-18 16:29:12 179 0

转载 iOS 性能调优,成为一名合格 iOS 程序员必须掌握

提供了基于Swift3.0模仿的新浪微博的Demo,大家可以下载看一看:基于Swift3.0高仿的微博客户端,里面针对于微博首页的复杂页面的优化做了很多的处理,页面的FPS 一直保持在59 ~ 60 。 看下demo的效果:   FPS测试.gif CPU 和GPU 关于绘图和动画有两...

2018-10-18 16:26:07 53 0

转载 swift 声明变量的?和!的区别

  Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错: var stringValue : String //error: variable �...

2018-10-16 20:23:36 100 0

转载 Xcode使用自定义字体文件

iOS开发中系统自带的字体不能满足需求,需要自定义字体,应该怎么做呢?手把手教你使用 1.拿到下载到的字体文件,拖入项目中   拖入项目.png 2.配置info.plist文件 配置字段"Fonts provided by application"...

2018-10-16 20:10:39 305 0

转载 利用AutoLayout UILabel文字自动适应大小,显示不全, Autoshrink属性

相比大家会经常遇到  label  或则  textfield等显示文字的  视图时,显示不全,或者无法自动 变化长度  ,自动改变字体的 设置: 今天给大家演示一下,如何 在autolayout让label 适应 不同的 宽度:   1.自动 改变字体(字体收缩): 首先设置好 labe...

2018-08-23 15:26:34 1392 0

原创 xib写 tableHeadView , frame 不准确的解决方法

打印 headView 的信息后可以看到 autoresize 的属性为 W+H,这个属性决定了 headView会根据 tableview 动态调整宽高 所以我们只要将这个动态调整禁用掉就可以解决这个问题了 禁用方法: 设置autoresizingMask的属性为默认值 0, OC 为U...

2018-07-26 17:10:14 421 0

原创 关于 iOS开发者账号提示必须更新绑定手机号的解决方法

相信大家最近都遇到了这个问题:在你点击Edite进去修改了手机号,然后回来刷新看到一脸懵逼, md, 坑货,改了还不行....再试一遍?那么正确的姿势是什么呢哈哈,重点来了...第一步:找一个10以上的系统的iPhone(实测为11.3),10以下的没验证过哈,第二步:退出原先的 appleid,...

2018-04-23 15:20:00 2421 0

转载 iOS的 NSHashTable和NSMapTable用法

在iOS的项目开发过程中,我们经常会使用到NSSet,NSArray,NSDictionary三个类,它们为我们设计较友好的数据结构时提供了很方便的方法先准备本文中将要使用的对象:#import <Foundation/Foundation.h> @interface...

2018-04-20 11:57:42 488 0

原创 mac使用 升级 ruby及 pod 安装

第一例: 默认情况下,Mac OS X 系统已经安装好 Ruby(最新的 Mavericks 随机的 Ruby 版本为2.0.0p247),安装在/System/Library/Frameworks/Ruby.framework/Versions/Current目录下。 在命令行下可以直接通过...

2018-04-19 10:11:46 311 0

转载 MLeaksFinder检查泄露

简介MLeaksFinder是WeRead团队开源的一个检测iOS内存泄漏的框架,其使用非常简单,只需将文件加入项目中,如果有内存泄漏,3秒后自动弹出警告来捕捉循环引用。使得可以在开发快速找到80%内存泄漏,而使用Xcode Leak工具更适合大范围的,全部的寻找泄漏点。特性通过阅读MLeaksF...

2018-04-12 11:52:29 522 0

转载 runloop 与定时器

首先要注意 : tableview,scrollview,滑动时NSTimer的加入到run Loop中 要不然的话滑动阻碍NSTimer 运转 界面是主线程 在软件开发过程中,我们常常需要在某个时间后执行某个方法,或者是按照某个周期一直执行某个方法。在这个时候,我们就需要用到定时器。然而,在iO...

2018-04-09 17:00:11 255 0

转载 UITableView 的选中状态

一、cell 在初始化或者重用时,调用 -_configureCellForDisplay:forIndexPath: 方法,这个方法会做一些附带操作,其中会调用 setSelected:animated: 方法,将 cell 的选中状态置为未选中。

1 在 tableView:cellForR...

2018-04-04 17:42:51 192 0

转载 AutoLayout相关的几个易混淆的方法

- (void)updateViewConstraints NS_AVAILABLE_IOS(6_0);    UIViewController中也新增了一个更新布局约束的方法,在AutoLayoutUIView相关API的笔记中,详细讲述了UIView的一组更新布局约束的方法。   这个方法默认...

2018-04-04 17:40:23 245 0

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