iOS开发输入自动填充UITextField背景色
目录1. UITextField的背景色2. 输入时自动填充背景色2.1 设置UITextField代理2.2 监听开始和结束输入事件3. 完整示例代码总结在iOS应用程序开发中,我们经常需要为输入框添加背景色。而有时候,我们希望输入框在输入时能自动填充背景色,以提醒用户当前正在输入的位置。本文将介绍如何在iOS中实现输入自动填充背景色,并提 ...
Swift data范围截取问题解决方案
目录一、截取字符串的几种方法1. 截取前几位2. 截取后几位3. subData4. 下标截取二、subData(in 报错 EXC_BREAKPOINT一、截取字符串的几种方法
1. 截取前几位
mobileID.prefix(32)
2. 截取后几位
mobileID.suffix(3)
3. subData
data.subdata(in: 0..<4)
4. 下标截取
data[0..<4]
二、subData(in 报错 EXC_BREAKPOINT
原因 ...
Swift使用编解码库Codable的过程详解
目录Codable协议定义JSON 和 模型的相互转换字典 和 模型的相互转换Codable 是 Swift 引入的全新的编解码库,使开发者更方便的解析JSON 或 plist 文件。支持枚举、结构体和类。
Codable协议定义
Codable代表一个同时符合 Decodable 和 Encodable 协议的类型,即可解码且可编码的类型。
typealias Codable = Decodable & Enc ...
iOS小数取整的方法(ceil floor round)示例
iOS小数取整的方法
ceil(value):求大于小数value的最小整数。
floor(value):求小于小数value的最大整数。
round(value):小数value的四舍五入取整。
示例(一):
CGFloat width = 70.15;
[self logCeilFoorRoundWithValue:width];
打印:
ceil(a) = 71.000000 floor(a) = 70.000 ...
iOS离屏渲染过程示例解析
目录界面渲染渲染的过程ios离屏渲染为什么会使用离屏渲染离屏渲染的场景和优化圆角优化shadow优化组不透明关闭抗锯齿离屏渲染的检测iOS版本上的优化善用离屏渲染什么时候需要CPU渲染界面渲染
UIView继承自UIResponder,可以处理系统传递过来的事件,如:UIApplication、UIViewController、UIView,以及所有从UIView派生出来 ...
解决Flutter出现CocoaPods报错情况(Mac和IOS)
目录错误情况分析解决错误情况
Launching lib/main.dart on iPad Pro (12.9-inch) (5th generation) in debug mode...
main.dart:1
CocoaPods' output:
↳
Preparing
Analyzing dependencies
Inspecting targets to integrate
Using `ARCHS` setting to build architectures of target `Pods-Runner`: ...
Stack View自定义间隙减少约束的数量
目录引言问题描述Stacking Stacks自定义间隙(iOS 11)标准间隙和默认间隙引言
Apple 在 iOS9 引入了 StackView,使用它可以减少约束的数量,让使用 AutoLayout 更加容易。但有一种边界使用场景是需要自定义视图之间的间隙。这种情况可以使用嵌套布局的方式来解决,但解决方案有些复杂。在 iOS 11 中给出了解决方案,你可以在 ...
openstack重启swift服务后报错问题解决方案
目录swift重启报错 问题描述解决办法swift重启报错
问题描述
swift服务正常状态如下
[root@controller ~]# swift stat
Account: AUTH_8bde12ff804e42498661b7454994c446
Containers: 0
Objects: 0
Bytes: 0
X-Put-Timestamp: 1690507907.679 ...
iOS移动端软键盘弹起空白和滚动穿透问题解决方案
目录引言键盘弹起空白滚动穿透问题引言
在做h5移动端项目的时候,给用户一个十分友好的体验是很必要的。最近抽空整理了下移动端(iOS端)项目中经常碰到的两个问题
键盘弹起空白
在我们点击input等弹出手机键盘,在点击完成后经常会在底部出现跟键盘同大小的空白,但是当我们滚动下页面发现又好了,这个在iOS端可以说很常见 ...
iOS开发image背景图片拉伸问题解决分析
目录前言方法一:方法二:方法三:补充知识前言
(如果是imageView的图片拉伸问题,可直接看文章结尾,OC和Swift)
在开发中聊天、按钮等背景图片,UI设计师可以仅设计其边框样式,然后通过代码就行处理,以适应聊天文字的大小或按钮的大小。
这样不仅可以使安装包更轻巧而且可以更灵活的使用图片;
方法一:
即将弃用方法 ...
Swift 如何让ScrollView滚动到具体某个位置
1. 使用scrollToItem方法滚动集合视图
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
let firstIndexPath = IndexPath(item: 0, section: 0)
let lastIndexPath = IndexPath(item: self.recordArray.count - 1, section: 0)
// Scroll to first item
self.collectionView.scrollToItem(at ...
iOS 内存泄漏排查方法及原因分析
目录一、排查方法1.1 静态内存泄漏分析方法:1.2 动态内存泄漏分析方法:二、内存泄漏的原因分析2.1 ViewController中存在NSTimer2.2 ViewController中的代理delegate2.3 ViewController中Block本文将从以下两个层面解决iOS内存泄漏问题:
内存泄漏排查方法(工具)内存泄漏原因分析(解决方案)
在正式开始前,我们先区分 ...
Swift Sequence Collection使用示例学习
目录一:Sequence1.1 迭代器 Iterator1.2 IteratorProtocol协议1.3 Sequence协议1.4 通过Sequence协议自定义有限的集合二:Collection2.1 环形数组2.2 MutableCollection2.3 RangeReplaceableCollection2.4 BidirectionalCollection2.5 RandomAccessCollection一:Sequence
对于 Sequence 协议来说,表达的是既可以是一个有 ...
Swift之运算符重载示例详解
目录引言重载双目运算符单目运算符复合赋值运算符等价运算符 ==自定义运算符自定义后置运算符自定义中置运算符引言
在C++中, 运算符是可以重载的, Swift也是支持的
注:=和三目运算符a ? b : c不可重载
重载双目运算符
class Vector {
var x: Double = 0.0
var y: Double = 0.0
var z: Double = 0.0
init(x ...
Swift map和filter函数原型基础示例
目录map函数原型filter函数原型map函数原型
/// Returns an array containing the results of mapping the given closure
/// over the sequence's elements.
///
/// In this example, `map` is used first to convert the names in the array
/// to lowercase strings and then to count their characters.
///
/// ...
Swift reduce函数使用示例详解
目录reduce参数示例reduce(intoreduce
Swift中数组的reduce方法用于做序列元素的累加,如数组元素的累加, 函数原型:
@inlinable
public func reduce<Result>(
_ initialResult: Result,
_ nextPartialResult: (Result, Element) throws -> Result) rethrows -> Result
参数
initialResult: 初始值, The value t ...
iOS Swift Lazy var View失效问题解决
目录lazy var使用失效原因分析lazy var使用失效
一般来说,在UIViewController里的UIView使用lazy var,可以确保在只第一次使用时创建。
但是如果在viewDidLoad()前访问这个View,那么这个View就会创建两次,说明Lazy var机制失效了。网上搜了一下,都是说Lazy var在多线程下会失效。然而我打印一下日志,两次创建都是在主 ...
iOS Swift 值类型与引用类型使用区别基础详解
目录引言值传递引用传递引言
值类型在传递和赋值时将进行复制,而引用类型只会使用引用对象。
Swift中定义的很多类型都是值类型,如struct、enum以及所有的内建类型(Int、Bool、String、Array、Dictionary)都是值类型。class为引用类型。
以最常用的数组为例
值传递
A,B两个类各有一个Array,把B的arr赋值为A的arr,然后给B ...
iOS各种ViewController控制器使用示例完整介绍
目录正文1 UIViewController2 UINavigationController3 UITabBarController4 UIPageViewController正文
iOS 界面开发最重要的是ViewController和View,ViewController是View的控制器,也就是一般的页面,用来管理页面的生命周期(它相当于安卓里的Activity,两者很像,又有一些差异)。
ViewController的特点是它有好几种。 ...
iOS超出父控件范围无法点击问题解决
目录场景实现思路完整代码botView代码场景
橙色view添加在蓝色view上,满足点击超出蓝色view部分可以响应事件
实现思路
重写底部蓝色view的hitTest方法,从最上层依次遍历子控件,判断触摸点是否在子控件上,在的话就返回子控件的hitTest方法,不在就返回self
完整代码
#import "ViewController.h"
#import "BotView.h"
@i ...