ios开发

支持Xcode10和适配iPhone XS Max、iPhone XR的方法

本文介绍了支持Xcode10和适配iPhone XS Max、iPhone XR的方法,分享给大家,具体如下, 目前我们项目已做了Xcode10(swift4.0)和新机型的适配,总结一下遇到的问题和修改的内容,希望帮助到...

浅谈强大易用支持URL Rewrite的iOS路由库FFRouter

FFRouter 是 iOS 中一个强大且易用的 URL 路由库,支持 URL Rewrite,使 APP 在发布之后也可以动态修改相关路由逻辑。基于匹配查找 URL,效率高。集成和使用都非常简单! Github链接:FFRoute...

iOS禁止所有输入法表情的方法

本文实例为大家分享了iOS禁止所有输入法表情的具体代码,供大家参考,具体内容如下 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { //禁止所有...

iOS基于 UILabel实现文字添加描边功能

可以达到文字描一圈黑边的效果: 继承UILabel以后重载drawTextInRect: - (void)drawTextInRect:(CGRect)rect { CGSize shadowOffset = self.shadowOffset; UIColor *textColor = self.textColor; CGContextRef c = UIGraphicsGetCurrentCo...

iOS开发实战之Label全方位对齐的轻松实现

前言 本文主要给大家介绍了关于iOS Label全方位对齐的实现方法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 ARUILabelTextAlign 1. 实现 UILabel文本在 左(上 中 下...

iOS实现后台长时间运行

前言 一般APP在按下Home键被挂起后,这时APP的 backgroundTimeRemaining 也就是后台运行时间大约只有3分钟,如果在退出APP后,过十几二十二分钟或者更长时间再回到APP,APP就会回到刚打开时的...

iOS实现音频进度条效果

前几天开发群里有一个老兄问了一个开发问题,他们的需求是要做一个类似音频进度条的东西,我感觉设计还不错,于是就写了个小demo供大家参考,在争得了他的同意的情况下写下这篇...

iOS第三方框架二维码生成与扫描

本文实例为大家分享了iOS第三方二维码生成与扫描的具体代码,供大家参考,具体内容如下 导入第三方框架libqrencode(生成二维码)和ZBarSDK(二维码扫描) 导入头文件 #import "QRCodeGenerator.h...

iOS使用原生AVCapture系列

概述: 可用于音频、二维码、拍照、录制视频 (均可自定义界面) 常见的输出信号: AVCaptureAudioDataOutput 音频输出 AVCaptureFileOutput 文本输出 AVCaptureMetadataOutput 二维码 条形码… AVCaptu...

iOS中创建Model的最佳实践记录

前言 作为一个优秀的程序员,或者想成为优秀的程序员,最基本的你得有MVC编程思想,那么你就要对JSON获取的数据建Model,将service和controller层都分离,从而做到低耦合。现在有很多利...

iOS实现简易的导航栏颜色渐变实例代码

前言 很多App首页要做成类似天猫和京东的导航栏,实现在页面滑动过程中导航栏渐变的效果。笔者之前在项目里用过一个三方,后来更新版本失效了,于是决定结合自己对导航栏的认识...

谈谈iOS中的多继承与多重代理

前言 多继承和多重代理在swift的语言层面上是不支持的,但我们有时会遇到这样的问题: 类B和C分别继承自A,B1和B2继承自B,C1和C2继承自C.现在我们需要在B1和C1中添加相同的方法,怎么去做使...

iOS11实现App内自动连接Wi-Fi的方法

背景: 给智能设备配置网络,需要直连智能设备发射的Wi-Fi 目前技术: iOS11后苹果提供 NEHotspotConfigurationManager 类直连周边Wi-Fi,iOS11前只能跳转到系统设置界面手动连接Wi-Fi 步骤 给开发...

详解iOS 验证码输入的实现思路

如图所示,现在很多App采用了类似下划线、方块等方式的验证码输入,直观美观!对于这种效果的实现方式,大概有以下几种方式: 1.多个UITextField组成 这种方式好处是有光标闪烁、但...

简单好用的iOS导航栏封装.runtime属性控制实例代码

前言 本文主要给大家介绍一个不错的导航栏控制工具,可以大大的简化代码,并保留系统特性,不用自定义导航栏,不用继承base。 下面话不多说了,来一起看看详细的介绍吧 UIViewCo...

iOS WebSocket长链接的实现方法

WebSocket WebSocket 是 HTML5 一种新的协议。它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯,它建立在 TCP 之上,同 HTTP 一样通过 TCP 来传输数据,但是...

关于iOS自适应cell行高的那些事儿

前言 其实早就准备写这篇文章了,但是一直没有系统去整理一下相关的demo,加上最近离职了,各种事情忙的有点郁闷,所以一直拖沓了下来。回家休息了一段时间想起来写了一半的d...

iOS优化UITableViewCell高度计算的一些事儿

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

iOS坐标系的深入探究

前言 app在渲染视图时,需要在坐标系中指定绘制区域。 这个概念看似乎简单,事实并非如此。 When an app draws something in iOS, it has to locate the drawn content in a two-dimensional space defined by a coo...

iOS如何自定义步骤进度条实例详解

前言 最近新项目要做入驻功能,其中包括一个入住流程,类似登录或者注册流程如下图。 之前想着用自己绘图来做,可是又懒不想多写代码,所以就想着能不能用进度条来做。 实现方法如...

iOS生成图片数字字母验证效果

本文实例为大家分享了iOS生成图片数字字母验证的具体代码,供大家参考,具体内容如下 直接上代码,注释很详细 #import "CaptchaView.h"#define kRandomColor [UIColor colorWithRed:arc4random() % 256 / 2...

iOS仿抖音视频加载动画效果的实现方法

前言 这几天一直跟开源的抖音demo斗智斗勇,今天跟大家分享的是抖音中或者快手中加载视频的动画,这个加载效果还是挺实用,下面话不多说了,来随着小编一起学习学习吧 上图看成品...

iOS中CPU线程调试的高级技巧分享

前言 最近在开发直播,发现CPU性能被打满后导致CPU降频,发热严重,然后卡顿… 为了定位这个问题我们花费了至少 3天的时间 一点一点跟踪CPU的线程代码,当遇到C++的thread的时候没有符号表...

iOS字体大小适配的3种方法示例代码

前言 在iOS开发中,有些公司对字体也有适配要求,为了让字体美观,所以在不同尺寸的屏幕上字体大小也要做到适配。 自己总结了几种方法供大家参考,下面话不多说了,来一起看看...

详解iOS中多倒计时场景的解决方案

背景 在我们开发APP的过程中,或多或少都遇到过需要使用倒计时的场景,大多数应用中的用户登录注册过程中获取验证码的倒计时,电商或者外卖APP中的订单送达的倒计时,以及秒杀类...

iOS简单易用的GCD计时器的实现原理

前言 好久没更新文章了,在掘金第一次发文章,还是给自己立一个flag每周至少更新一篇文章,可能文章的质量还不是很如意,希望通过写文章来提高自己文笔,以及记录自己学习中的...

h5 ios输入框和键盘的兼容性优化指南

起因 h5的输入框引起键盘导致体验不好,目前就算微信、知乎、百度等产品也没有很好的技术方案实现,尤其底部固定位置的输入框各种方案都用的前提下体验也并没有很好,这个问题...

iPhoneX 媒体查询适配的方法教程

iPhone X尺寸 5.8 英寸 5.65 x 2.79 x 0.30 英寸 iPhone X分辨率 1125 x 2436 每英寸PX~458 像素 屏幕尺寸 Apple iPhone X的屏幕为5.8英寸,约为实际设备尺寸的82.9%。Apple iPhone X设备的物理尺寸为5.65 x 2....

iOS NSNotificationCenter通知中心使用小结

前言 最近公司组织两个星期的新人培训,事情安排的满满的,周末都没有。说好的一个星期一更新的博客中断了,让大家久等了,现在培训结束,终于又可以安安静静的做一个程序员了...

iOS之UITableView计时器的实现方式总结(NSTimer、Dis

前言 最近工作比较忙,但是还是出来更新博客了。今天博客中所涉及的内容并不复杂,都是一些平时常见的一些问题,通过这篇博客算是对UITableView中使用定时器的几种方式进行总结。...

你应该知道的tableViewCell行高计算处理

前言 UITableView 是在app界面里非常常用的一个控件了,打开一个app,内容列表 作者列表 朋友圈列表等等,,,都离不开 UITableView 。 而 UITableView 的精髓,则是在 UITableViewCell 展现的, 最...

iOS使用WKWebView加载HTML5不显示屏幕宽度的问题解决

最近在项目中我们的商品详情页是一个后台返回的图片标签。需要我们自己去写一个HTML5标签进行整合,(相当于重新写了一个HTML页面) :ok_hand:那就没办法了,我就自己写一个标签咯,应...

Xcode 10升级导致项目报错的常见问题解决

前言 前不久,伴随着iOS 12版本的发布,苹果升级了Xcode 版本,最新的版本是Xcode 10.1。不过升级后经常会遇到各种编译问题,下面就给大家总结一些常见的错误(我项目遇到的)。 话不...

ios基于UICollectionView实现横向瀑布流

在网上找了许久,一直没有发现有提供横向瀑布流效果的。在项目中用到了我就在垂直瀑布流的基础上,进行了修改,做出了横向瀑布流的效果。同时也对一些UICollectionView的属性进行简...

iOS中WKWebView的一些特殊使用总结

前言 现在大部分的app只支持iOS8以上的系统了,在接入H5时可以只管最新的WKWebView了。 WKWebView的优势 性能高,稳定性好,占用的内存比较小, 支持JS交互 支持HTML5 新特性 可以添加进度...

iOS如何优雅地实现序列动画详解

前言 我们的在做动效中经常会有这样的需求,A动画执行完,执行B动画,B动画执行完执行C动画这样的序列,比如如下效果: iOS 10之前,我们可能这样实现这个动画序列,实际上可能你现...

iOS 控件封装(又名拧螺丝)之排序按钮的开发

前言 排序按钮是实际开发中比较常见的一种控件,最近我也遇到了,今天简单分享下。 虽然功能简单,但是保证你看了不亏,尤其是对UI这块比较薄弱的同学来说。 OK,先看图: 简单...

详解iOS 用于解决循环引用的block timer

一、什么是回调函数? 回调函数,本质上也是个函数(搁置函数和方法的争议,就当这二者是一回事)。由“声明”、“实现”、“调用”三部分组成。 在上面的例子中,我可以看出...

iOS11.3以下modal中input光标错位的解决方法

先看一下错位的效果: 这本是iOS系统的一个BUG,不过在iOS11.3以后的系统中修复了; 解决办法: 在 body 标签中添加样式: body { position: fixed; width: 100%;} 或者 body { overflow: hidden; height: 100...

iOS Moya实现OAuth请求的方法

0. 起源 开放授权(OAuth)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用...

详解iOS中position:fixed吸底时的滑动出现抖动的解决

两种抖动 为什么抖动还会有两种? 其实是我碰到过两种抖动的场景,第一个场景是native的抖动,第二个场景是h5的抖动。 native的抖动 前端开发人员会在app中打开webview,这个时候iOS中...

iOS实现短信验证码倒计时

在开发中,经常在需要用户注册的时候会需要实现验证码倒计时的功能,下面是解决这个问题的两种思路(使用UIButton控件) 一、利用NSTimer计时器 1.新建一个UIButton按钮,设置成属性,名...

iOS关联对象示例详解

背景 在iOS开发中如果我们想给一个对象动态添加属性或者给category添加属性的时候,都是通过runtime的关联对象去实现,那我们添加的属性到底是如何存取的呢?是直接添加到了对象自身...

iOS设置圆角的4种方法实例(附性能评测)

四种设置圆角的方法 从网上收集了各种设置圆角的方法,总结起来有以下四种: 1、设置 layer 的 cornerRadius view.layer.masksToBounds = YES;view.layer.cornerRadius = imgSize.width / 2; 2、用贝塞尔曲线作...

iOS中的实时远程配置全纪录

前言 当您需要快速推出远程配置更改时该怎么办?也许你做的上次更改没有成功,你想尽快撤消它们。或者您的应用中出现了问题,您需要禁用整个功能。 更频繁地调用 fetchWithExpira...

如何在iOS上使用MVVM进行路由详解

前言 我已经在几个项目中使用MVVM了一段时间,我真的很喜欢它的简单性。特别是,如果你像许多人一样从MVC迁移,你只需要在你的架构中增加一层ViewModel。如果您发现太多层级造成的...

iOS中使用对象的弱引用示例代码

简介 我们都知道使用 UIImage imageNamed 创建的 UIImage 对象会被持有(强引用),如果图片太大会占用内存,损耗 APP 的性能,影响用户体验,如果能改造对其的强引用变为弱引用就可以解决问...

iOS中表单列表样式键盘遮挡的解决方案

前言 近期参与了一个招聘类app的开发,注册流程比较多,基本都是cell带输入框的表单列表样式,避免不了的就会遇到键盘遮挡问题。相信大家也一定遇到过类似的问题,今天在这里就...

iOS自定义字体设置和系统自带的字体详解

前言 有时候我们写app的时候不想使用默认的字体,我们会用到UI给我们设计好的字体,或者别的字体,那么我们改如何设置呢. 首先先看一下我自己导入的字体和苹果给我们自带的字体都有...

iOS 12+ 中检测网络访问的方法

我最近写了一篇文章,来介绍 iOS 在连接新的 Wi-Fi 网络时,如何在弹出一个 web view 以让用户登录或注册之前,检测 Captive Portals (强制网络门户)。如果你连接过诸如酒店、酒吧或咖啡店...