我是一名研发人员,希望每天都能进步一点点。
我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
// 协议 /* OC中也有协议,swift中的协议的作用与OC中基本一样,只是在写法上有一点区别。 我们使用 protocol关键字来定义一个协议。在一个协议中只能存放计算式属性以及方法的声明, 而不能对他们进行定义。
其实这只是协议中的一个小的知识点,但是个人觉得这是对协议的一种优化,可以拿来学习一下。 swift的协议概念: OC中也有协议,swift中的协议的作用与OC中基本一样,只是在写法上有一点区别。
/* 本节来学习swift的编码、解码和串行化。 为什么需要编解码? 许多的编程任务涉及到通过网络发送数据、将数据保存到磁盘上,或是将数据提交到API以及 服务上。
xcode10 编译报错: Showing Recent Messages :-1: Multiple commands produce '/Users/ios/Library/Developer/Xcode/DerivedData/MyLiveStu...
// // main.swift // swift14(结构体) // // Created by iOS on 2018/10/15. // Copyright © 2018年 weiman. All rights reserved. // import Foundation // 结构体(二) /* 继续上节内容,学习结构体的相关知识。
新建一个demo,在StoryBoard上创建三个VC,如下图: image.png 新建两个VC,SecondViewController,和ThirdViewController,分别与StoryBoard的VC相关联。
原文地址:https://blog.csdn.net/u011619283/article/details/78658613 最近在做SDK的截图,想触发类似系统的截屏功能,找了一圈,总结一下靠谱的几种方式。
showTextView.delegate = self let str = showTextView.text ?? "" let title = "本《隐私政策》将向你说明:\n" ...
继续上节的学习,我们在这一篇文章里把“算法”这一章内容学习完。 本节解决问题: 算法的好坏到底是如何评估的? 知识点: 1.函数的渐进增长 2.算法的时间复杂度 3.常见的时间复杂度 4.算法的空间复杂度 1.函数的渐进增长 这一知识点与数学相关,不过没关系都是很容易理解的内容。
/* 结构体 大部分语言中都会有结构体。swift中的结构体属于四大基本类型(函数、枚举、结构体、类)之一,他属于值类型。 标准库中的很多类型都是结构体类型,像Int、Float、String、Array。
本节虽然名为“算法”,其实讲的只是算法的一些概念以及评估方式,并没有涉及很复杂的算法。 解决问题: 什么是算法 算法的特性 算法设计的要求 如何评估一个算法的优劣 通过本节的学习,我们可以轻松的解决这些问题。
/* 枚举 swift的枚举类型也是一个很强大的类型,与其他语言相比,swift中枚举应用更加灵活、广泛。 例如: 像C或者OC中都有枚举类型,但是他们的枚举类型默认为整数类型int兼容。
// // main.swift // swift11(闭包) // // Created by iOS on 2018/10/10. // Copyright © 2018年 weiman. All rights reserved. // import Foundation /* 闭包 闭包是swift中比较重要的一部分内容,也是个人认为比较难以理解的内容,也可能是之前没有 细细的研究的缘故。
swift的函数与其他语言中的函数还是有很多的不同点的, 我们在本节中一起学习swift中的函数都有哪些特性。 辅助文件, 在“统一的函数引用体系”中会用到。
个人看法: 数据结构的重要性对于码农而言就像盖房子的图纸,做饭的菜谱,没有它,也许也能盖得成房子,也能做的熟菜,但是质量如何就不敢说了。我们从大学的时候就把《数据结构》作为重要的基础课程来认真学习,但是真正听懂的,弄明白的,并不是很多。
// // main.swift // swift09 // // Created by iOS on 2018/9/29. // Copyright © 2018年 weiman. All rights reserved. // import Foundation // swift学习笔记9 /* Optional:可选类型 ? 可选类型是swift特色之一,也是很多初学者不适应的原因之一。
// // main.swift // swift08 // // Created by iOS on 2018/9/28. // Copyright © 2018年 weiman. All rights reserved. // import Foundation //swift学习笔记8 /* 1. for-in 循环 swift中使用for-in循环还是很频繁的。
import Foundation //swift学习笔记07 /* 控制流语句 学过任何一种语言的小伙伴们都对控制流语句不陌生,几乎每一天都在用。 控制流分类: 1.分支 2.循环 */ /* do语句块 这个语句块在我之前的学习中一直在使用,是一种在学习中很方便的写代码的方式。
swift学习笔记6 字符和字符串 在swift中,String类型也是结构体,属于值类型,而不是引用类型。这一点,与OC是不一样的。 // // main.
// // main.swift // swift04 // // Created by iOS on 2018/9/21. // Copyright © 2018年 weiman.
// // main.swift // swift03 // // Created by iOS on 2018/9/21. // Copyright © 2018年 weiman. All rights reserved. // import Foundation /* swift学习笔记4 */ // 1.元组 /* 元组是swift中一种复合类型。
/* swift学习笔记1 简介 swift出现的目的:为了简化macOS和iOS开发 特点: 1.开源 2.跨平台 3.面向对象的编程语言 4.编程范式丰富:面向过程,面向对象,函数式编程 5.安全性 */ /* swift学习笔记2 基本类型体系 1.枚举(enum) 2.结构体(struct) 3.类(class) 4.协议(protocol) 5.函数(function) 6.复合类型:元组(tuple) 注意:这里并没有像别的语言那样,把基本数据类型和用户自定义数据类型分类。
原文地址:https://www.cnblogs.com/luoxiaofu/p/8528383.html 关于“值类型嵌套引用类型”的内存地址情况,我自己实验的结果与作者不同: //2.
有的时候,项目中会用到阴影的效果,增加立体感。我们可以让设计师给出切图,用图片填充。我们还可以使用几句代码来实现简单的阴影效果。 实现效果图展示一: image.
https://blog.csdn.net/u012992171/article/details/50673305 公司最近的项目需要上线一个视频功能,在临近尾声的时候出现了一个比较坑爹的BUG,那就是开发Android的同事拍摄的视频上传到服务器之后,我这边用手机无法播放,而我自己拍摄的视频上传后是可以直接播放的。
向上取整:float ceilf(float); double ceil(double); 向下取整:float floorf(float); double floor(double); 四舍五入:float roundf(float); ...
extension UIImage { /// 根据视频url和时间点截图 static func thumbnailImageForVideo(videoURL: URL, time: TimeInterval) -> UIImage? { let asset = AVURLAsset.
注意访问权限 /// 从相册中获取视频数组----**- private func getVideosFromAlbum(result: @escaping (([ContestChooseVideo.
实现效果: image.png 主要代码: //设置已经滑过一端滑动条背景图片,会覆盖之前之前的颜色,以下相同 [sli1 setMinimumTrackImage:[UIImage imageNamed:@"sliderImage.
原文地址:https://blog.csdn.net/iosfengguibin/article/details/52086435 今天导入三方的sdk之后,空项目,总是报错“selector not recognized”,在网上找到这篇文章,才解决了问题,感谢作者的分享。
demo地址:https://github.com/weiman152/InputNum 实现效果: 11.png 22.gif 使用: 默认: inputNumView.
图片发自简书App 图片发自简书App
原文地址:https://blog.csdn.net/u011518723/article/details/49248467 我的demo地址:https://github.com/weiman152/LiveRecordDemo。
原文地址:https://www.cnblogs.com/ziyi--caolu/p/8034367.html 非常感谢原文作者,总结的很好,讲解的也很详细,学习了。
原文地址:https://blog.csdn.net/cuihaiyang/article/details/56892799 自测可以清理,但是第一次重新启动模拟器会比较慢。
原文地址:https://blog.csdn.net/nynkl/article/details/78050495 硬盘空间是大家最头痛的一个问题,大家在硬盘空间变小的时候怎么腾空间的呢?下面绿茶小编为大家分享7个mac系统释放空间的高级方法,大家赶紧来收了! mac系统释放硬盘空间方法: 方法一:删除Emacs——可以节省出60MB+的硬盘空间 如果你都不知道什么是Emacs,那么你可以放心的将其移除。
在OC中,我们使用AFNetworking来进行网络请求,简洁方便。在swift中,我们使用Moya来进行网络请求,Moya封装了Alamofire,可以更加方便的进行网络请求。
有时候我们会因为一些权限需要用户到系统设置中进行开启权限,这就需要我们从自己的app中跳转到系统的设置中了,具体是怎么做的呢?其实网上有很多很多的资料,我就不再赘述了。
demo地址: https://github.com/weiman152/SwiftCustomInputView 很多应用都有评论功能,评论功能涉及到的问题主要就是两个: 1.键盘弹出的高度 2.动态改变textview的高度 剩下的就是一些动画了。
这是一个基本的功能,实现的方法自然也很多了,仁者见仁,智者见智,若觉得我的实现不够好,欢迎指正。 效果图: 高度截图.gif 文字高度截图.
demo地址: https://github.com/weiman152/CAKeyframeAnimationDemo 继上一篇之后,这一篇我们来介绍使用CAKeyframeAnimation来实现简单的抖动动画。
简单的平移、缩放和旋转以及渐隐渐显,都可以使用 UIView.animate(withDuration: 0.25, animations: { // 最终的结果显示 }) { (_) in // 动画完成之后要进行的操作 } 如果是稍微复杂的动画,比如沿着曲线运动,就可以考虑使用关键帧动画CAKeyframeAnimation实现。
这张画的还可以吧。 image.png
女孩儿画的有点壮 image.png
小小蜗牛慢慢爬。 这是画的第二张彩铅画。 image.png
海贼王是我特别喜欢的一部动漫。 这一张路飞画的实在是不怎么像,练习中。 image.png
第一次画蔬菜,练习立体感,不过还是感觉立体感不太好。 image.png
花了大半天时间,画了一张古装女孩儿,比例不太好。 image.png
失败的画作,谨此记录 image.png