![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
iOS 开发笔记
amberoot_源狼乐
It isn't the burdens today that drive me mad,it is the regrets over yesterday and the fear of tomorrow.
展开
-
Xcode常用快捷键及设置
一、快捷键1. 代码相关:按 command ,点击函数 进入函数声明处 按 option ,点击方法 查看该方法带描述,包括iOS版本、相关主题等 按 control + command + 空格 显示表情 按 control + command + e 同时修改多处选中的名称 按 option + command + shift + 方向键...原创 2020-04-03 11:10:02 · 350 阅读 · 0 评论 -
swift3.0之函数
函数-默认参数值func someFunction(parameterWithoutDefault: Int, parameterWithDefault: Int = 12) { // 如果你在调用时候不传第二个参数,parameterWithDefault 会值为 12 传入到函数体中。} 函数-可变参数一个可变参数(variadic parameter)可以接受...转载 2019-02-26 09:26:21 · 103 阅读 · 0 评论 -
Swift之KVO实例
KVO(Key-Value-Observer)机制属于观察者模式。在对象属性变化时发送消息给观察者对象。 自定义观察者类://NSObject类实现了NSKeyValueOberving协议,只需继承NSObject类即可class MyObserver: NSObject { //观察属性值 override func observeValue(forK...转载 2019-02-14 14:19:27 · 533 阅读 · 0 评论 -
swift3.0之集合Set
集合(Sets):用来存储相同类型并且没有确定顺序的值。当集合元素顺序不重要时或者希望确保每个元素只出现一次时可以使用集合而不是数组。 创建和构造一个空的集合var letters = Set<Character>()print("letters is of type Set<Character> with \(letters.count) items.")...转载 2019-02-25 12:00:47 · 165 阅读 · 0 评论 -
iOS-Swift之用OHMySQL框架直连MySQL数据库并进行数据操作
摘要:网上查询OHMySQL,大多是用OC语言写的例子,我现在写一个swift的例子。另,很多文章都说到APP直连数据库是不安全的。PS:安装OHMySQL我是用CocoPods快速导入的,在Podfile文件中加上 pod 'OHMySQL' ,然后在项目路径运行 pod install 指令即可,没安装CocoPods移步到:https://blog.csdn.net/amberoot/a...原创 2018-12-13 13:55:52 · 3854 阅读 · 18 评论 -
CocoaPods之安装使用及常用指令
摘要:·RubyGems是一个方便而强大的Ruby程序包管理器,Ruby的第三方插件是用gem方式来管理,非常容易发布和共享,一个简单的命令就可以安装上第三方的扩展库。特点:能远程安装包,包之间依赖关系的管理,简单可靠的卸载,查询机制,能查询本地和远程服务器的包信息,能保持一个包的不同版本,基于Web的查看接口,能查看你安装的gem的信息。·Gem:是一个管理Ruby库和程序的标准包,它通...原创 2018-11-22 11:14:01 · 517 阅读 · 0 评论 -
iOS swift3.0之UISlider的简单使用
///添加滑动块 func addSlider(viewController:UIViewController, Frame:CGRect, maxValue:Float, minValue:Float, currentValue:Float, leftColor:UIColor, rightColor:UIColor, backColor:UIColor) { ...原创 2018-08-30 15:38:00 · 430 阅读 · 0 评论 -
iOS-swift之常用框架简单介绍
网络框架 CocoaAsyncSocket · GitHub地址:https://github.com/robbiehanson/CocoaAsyncSocket/ · 特点:易用、强大的socket(TCP\UDP)第三方。 SwiftHttp · GitHub地址:https://github.com/daltoniam/SwiftHTTP...原创 2018-08-13 15:45:28 · 788 阅读 · 0 评论 -
iOS swift3.0之解决(UITableView)表格添加拖动手势冲突造成表格不能滑动问题
一、引用 UIGestureRecognizerDelegateclass ViewController: UIViewController ,UIGestureRecognizerDelegate{二、添加拖动手势到tableviewfunc initGesture() { //初始化手势并指定触发事件 let panGesture = UI...原创 2018-08-07 11:54:10 · 1544 阅读 · 0 评论 -
iOS之解决第三方库不支持某种(armv7/armv7s/arm64)指令集问题-Apple Mach-O Linker Error
TARGETS --> Build Settings --> Architectures 如果有第三方库不支持某种版本指令集,例如arm7,可以把Build Active Architecture Only设置为No,Valid Architectures设置为"armv7s arm64"。Valid Architectures — 设置的支持arm指令集版本有:...原创 2018-07-21 11:28:08 · 4380 阅读 · 0 评论 -
iOS之错误-linker command failed with exit code 1-解决
Build Settings => Enable Bitcode => No原创 2018-07-19 11:45:10 · 1838 阅读 · 0 评论 -
swift3.0之字典Dictionary
创建一个字典var namesOfIntegers = [Int: String]()// namesOfIntegers 是一个空的 [Int: String] 字典namesOfIntegers[16] = "sixteen"// namesOfIntegers 现在包含一个键值对namesOfIntegers = [:]// namesOfIntegers 又成为了一个 [I...转载 2019-02-25 12:00:07 · 135 阅读 · 0 评论 -
swift3.0之Switch语句
普通Switchlet someCharacter: Character = "z"switch someCharacter {case "a": print("The first letter of the alphabet")case "z": print("The last letter of the alphabet")default: pri...转载 2019-02-25 14:26:44 · 206 阅读 · 0 评论 -
swift 16进制数-[UInt8]-转字符串-String-
把一串16进制数-[UInt8],例如 01 10 CD 转成字符串-String "0110CD",代码如下:func bytesToStr(bytes:[UInt8]) -> String { var hexStr = "" for index in 0 ..< bytes.count { var Str = bytes[index]....原创 2018-12-19 14:49:53 · 3199 阅读 · 0 评论 -
iOS-Swift之Realm的使用教程
·版本:Realm Swift 3.15.0·使用要求·安装·models模型·realm对象操作·writes写·queries读·update更新·delete删除·migration数据迁移原创 2019-05-30 14:29:32 · 3129 阅读 · 2 评论 -
Domain=DDXMLErrorDomain Code=1 "(null)"
//构造XML文档let doc = try DDXMLDocument(data: xmlData!, options:0)在使用第三方库KissXML解析数据的时候出现错误:Domain=DDXMLErrorDomain Code=1 "(null)"同样的数据,有时能解析成功,有时却解析失败,出现这样的错误。解决方法:把Kissxml里的DDXMLDocume...转载 2019-05-25 11:19:57 · 622 阅读 · 0 评论 -
iOS之绘制空心的圆形-swift4
通过CGPath绘制出空心的圆形原创 2019-04-25 14:16:34 · 2248 阅读 · 0 评论 -
swift4之String与NSString的区别与使用
本文主要介绍了String和NSString常用栗子。包括String和NSString各自独有的API以实现不同的功能,及它们的共有的功能。原创 2019-03-27 18:05:02 · 1693 阅读 · 0 评论 -
iOS之Grand Central Dispath(GCD)探究同步与异步&串行与并行&死锁(swift)
主要内容有三。1. GCD的三种队列(用户队列、全局队列、主队列);2. GCD添加任务到队列的两种方法(同步与异步);3. 用代码来解析同步与异步&串行与并行&死锁原创 2019-04-04 16:30:00 · 580 阅读 · 0 评论 -
swift之文件操作
本文介绍了几种文件操作,包括创建文件、删除文件、读取文件中数据、把字符串写入指定文件、获取指定路径的所有文件名等原创 2019-03-29 16:37:12 · 2359 阅读 · 0 评论 -
swift3.0之where语句的使用
switch语句中使用let scores = [20,8,59,60,70,80]scores.forEach { switch $0{ case let x where x>=60: print("及格") default: print("不及格") }}scores.forEach { (x) in p...转载 2019-02-27 10:17:35 · 181 阅读 · 0 评论 -
swift3.0之代码裁剪图片(只显示部分图片)
let rect = CGRect(x: 50, y: 50, width: 50, height: 50)let cgImageCorpped = snapRecord.image.cgImage?.cropping(to: rect)let imageCorpped = UIImage(cgImage: cgImageCorpped!)原创 2018-07-05 17:47:35 · 1743 阅读 · 0 评论 -
swift 委托Delegate的用法
委托在我的理解是:A要做的事情很多忙不过来或事情需要别人帮忙才能做成,就把其中一些事情通过协议委托给B做。具体步骤是:首先A需要先定义协议(协议里包括需要B做的事),然后在需要B做事的时候通过之前定义的协议发出委托;而B需要做的是先实现协议,然后在接到委托的时候做事。第一步:A定义协议//定义委托协议 -- 任何遵循exampleDelegate协议的类都要实现SaveBtnW...原创 2017-08-15 12:01:42 · 575 阅读 · 0 评论 -
iOS swift3.0 监听textField和textView的键盘事件
一、声明实现UITextFieldDelegate和UITextViewDelegate委托协议二、从storyboard中获取textField对象(也可以代码创建)三、在viewDidLoad方法中指定textField的委托对象为ViewController四、 实现协议方法...原创 2017-08-16 15:07:39 · 3388 阅读 · 0 评论 -
swift3.0 collectionView添加长按手势识别
在collectionView绘制cllectionViewCell的代理函数中添加长按识别原创 2017-10-27 14:14:31 · 1030 阅读 · 0 评论 -
swift3.0 修改UISegmentedControl的字体大小
var segment = UISegmentControl//修改字体大小let font = UIFont.systemFont(ofSize: 20)segment.setTitleTextAttributes([NSFontAttributeName:font], for: .normal)原创 2017-10-27 14:01:28 · 998 阅读 · 0 评论 -
iOS swift3.0 属性文件plist的应用
前言:iOS的属性文件(Property List)是以.plist结尾,以文件形式存储信息。我通常会创建一个根字典rootDict,然后把需要的各种格式数据根据Key写进根字典保存起来,需要的时候再根据对应的Key把数据提出来。当然,文件只保存少量关键数据,APP退出也不会影响到的数据。1. 文件路径-通常放在沙盒中的Documents文件夹中//工程中(私有的沙箱...原创 2017-08-30 11:49:02 · 265 阅读 · 0 评论 -
swift3.0-iOS app内部语言国际化(本地化)
用swift3.0来配置iOS APP内部语言环境原创 2017-09-05 10:51:23 · 2475 阅读 · 1 评论 -
iOS swift 自定义tableView不显示cell
1. 添加了3个tableViewCell进tableView,初始状态没有任何显示,点击第二或第三个tableViewCell能显示出内容,点击第一个却不能,左划均出现删除按钮。三个tableViewCell点击均有点击事件原创 2017-08-14 11:07:51 · 2262 阅读 · 0 评论 -
swift3.0 语法
// swift3.0import Foundationprint("Hello, World!")//单行注释/* /* 可嵌套都多行注释 */*///变量var myVariable = 42 //编译器自动推导其类型为IntmyVariable = 60 //变量多次赋值时需要保证值的类型相同print(myVariable)//常量let myCon...原创 2017-08-15 11:24:46 · 365 阅读 · 0 评论 -
iOS swift3.0之自定义按钮button
//// TitleButton.swift// weibo//// Created by mac on 17/8/10.// Copyright 2017年 xww All rights reserved.//import UIKitclass TitleButton: UIButton { override init(frame: CGRect) {...原创 2017-08-10 16:34:23 · 963 阅读 · 0 评论 -
swift3.0_String(字符串)的使用
初始化空字符串var emptyString = "" // 空字符串字面量var anotherEmptyString = String() // 初始化方法// 两个字符串均为空并等价。字符串可变性var variableString = "Horse"variableString += " and carriage"// variable...原创 2018-02-02 16:40:42 · 479 阅读 · 0 评论 -
iOS swift3.0 纯代码tableView的使用
简介:1.纯代码创建tableview2.自定义tableViewCell3.把搜索栏添加到表头4.动态添加删除tableViewCell另,我是把表格的数据保存到plist文件中的。保存、修改和删除数据的代码没有贴出来。一、MainViewController文件import UIKitclassMainViewController:UIView...原创 2017-08-29 15:07:51 · 389 阅读 · 0 评论 -
iOS swift之设置页面模态视图风格ModalPresentationStyle
//跳转页面时设置ViewController的显示风格let storyboard = UIStoryboard(name: "Demo", bundle: nil)let controller = storyboard.instantiateInitialViewController()controller?.modalPresentationStyle = .pageShee...原创 2018-07-05 16:53:33 · 2352 阅读 · 0 评论 -
swift3.0之数组的常用实例
//声明一个空的数组let emptyArray1 = [] //创建一个特定数据类型的空数组var emptyArray2 = [String]() //插入元素进数组的最后位置emptyArray2.append("milk") //指定位置插入元素进数组emptyArray2.insert("oranges", at: 0) //数组点个数print(emptyA...原创 2018-07-04 19:06:57 · 264 阅读 · 0 评论 -
iOS swift3.0之CollectionView添加长按手势并识别cell名称
一、在UICollectionViewDataSourced 绘制cell的代理方法中添加长按手势func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { let cell = collec...原创 2018-07-10 14:34:48 · 1201 阅读 · 0 评论 -
iOS swift3.0之计时器Timer的简单应用
第一步:var timer = Timer()第二步:// 初始化并启用计时器,控制每秒执行一次tickDown方法timer = Timer.scheduledTimer(timeInterval: 1,target:self,selector:#selector(tickDown),userInfo:nil,repeats:true)第三步: ///计时器每秒触...原创 2018-06-29 17:18:15 · 1159 阅读 · 0 评论 -
iOS swift3.0 以把字符串添加到文件结尾的方式保存数据
//把字符串写进文件,文件保存在沙盒中Documents路径中func writeStrToFile(receivedString: NSString) { let str = receivedString as String let wr = NSMutableData() wr.append(str.data(using:String.Encod...原创 2018-04-16 10:40:22 · 819 阅读 · 0 评论 -
iOS swift3.0 复制文件
前言:目的是把项目工程中的文件复制到APP的沙盒Documents路径中。//Documents路径let documentsPath = NSHomeDirectory() + "/Documents/"let fileManager = FileManager.default//工程中的Demo文件路径let srcUrl = Bundle.main.path(forR...原创 2018-04-16 09:59:27 · 465 阅读 · 0 评论 -
swift之IJKPlayer 的应用
前言:用IJKPlayer需要环境搭建,具体可以自行百度。下面是应用IJKPlayer的具体代码,代码中有详细备注。import IJKMediaFramework·初始化变量let ViewForPlayer = UIView()var player: IJKFFMoviePlayerController!///保存视频流地址的字符串var videoStream...原创 2018-03-13 10:31:07 · 1553 阅读 · 1 评论