自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mazy's Blog

每天学习一点点,每天进步一点点... stay foolish stay hungry.

  • 博客(187)
  • 收藏
  • 关注

原创 通信通知 Communication Notifications 的实现 (iOS 15+)

WWDC 2021 苹果在 iOS 15 系统中对通知做了很多改变, 让通知更加个性化.这里只有讨论通信通知 Communication Notifications, 苹果自带的很多应用, 以及第三方App 飞书, 都使用了这个通知功能。通信通知 Communication Notifications 简介iOS 15系统后, Apple 添加了通信通知的功能。这些通知将包含发送它们的联系人的头像,并且可以与 SiriKit 集成,以便 Siri 可以智能地根据常用联系人提供通信操作的快捷方式和建议

2022-05-15 18:02:34 2690 1

原创 SwiftUI基础 - Image 图片

Image 图片在SwiftUI中, 使用 Image 渲染图片, Image 可以加载 资源包, 系统图标, UIImage 等图片资源.基本用法1.从资源包内加载图片Image("cat")2.加载UIImage图片Image(uiImage: UIImage(named: "dog")!)3.加载苹果的 SF Symbols IconImage(systemName: "cloud.heavyrain.fill") .font(.largeTitle)属性设置内容显示

2022-01-17 22:58:34 5654

原创 SwiftUI基础 - 文本

Text 文本基础使用Text 作为 SwiftUI 中一个基本的控件, 等价于 UIKit 中的 UILabel, 但它可以用更少的代码,实现 UIKit 中对文本的复杂操作。Text("Hello SwiftUI") // 设置文本内容 .lineLimit(3) // 限制行数 .truncationMode(.middle) // 截断方式 .frame(maxWidth: .infinity, alignment: .leading) // 设置大小 .fon

2022-01-17 22:19:32 2041

翻译 Swift - 为您的应用添加黑暗模式 (Dark Mode)

英语原文地址:Dark Mode: Adding support to your app in Swift - SwiftLeeDark Mode在iOS 13中引入,并在WWDC 2019上宣布。它为iOS添加了更暗的主题,并允许您对应用执行相同的操作。这是给用户的绝佳补充,使他们可以在较暗的设计中体验您的应用程序。在此博客文章中,我们将暗模式支持添加到“ WeTransfer收集”应用程序后,我将与您分享我的经验。退出并禁用黑暗模式在我们开始采用Dark界面风格之前,我想简短地告诉您如何选择退出

2020-05-16 21:08:36 2274

翻译 Swift - Typealias 在 Swift 中的用法

英语原文地址:Typealias usage in Swift - SwiftLeeSwift 中的typealias实际上是现有类型的别名。很简单,不是吗?它们可以使您的代码更具可读性。通过以一种聪明的方式使用它们,它们在您的代码库中会非常有用。声明类型别名可以在 Swift 中使用typealias关键字和要分配的类型声明typealias。理解如何使用它们的一个非常简单的示例是为货币(如美元)创建别名。以收据结构的以下示例为例:struct Receipt { let totalC

2020-05-16 12:08:48 511

原创 iOS - 新特性:从键盘上获取手机号和验证码

前提:必须使用系统自带键盘前提:必须使用系统自带键盘前提:必须使用系统自带键盘番外:强制使用系统键盘类型方法在 AppDelegate 里面 UIApplicationDelegate 代理方法中设置func application(_ application: UIApplication, shouldAllowExtensionPointIdentifier extension...

2019-04-29 20:08:06 7731

原创 MySQL - 速查&笔记

文章目录什么是数据库?连接数据库数据库操作(DDL)1、创建数据库2、查看当前服务器下的数据库列表3、查看指定数据库的定义4、修改指定数据库的编码方式5、打开指定数据库6、删除指定数据库7、显示当前打开的数据库名称8、查看上一步操作产生的警告信息数据表的的操作1、什么是表?2、如何创建数据表3、查看数据库中的数据表以及表结构4、修改表结构5、如何删除数据表数据的操作(DML)1、插入数据2、更新数...

2019-03-31 21:42:29 425

翻译 iOS 使用 RxSwift 实现链式动画

如果你是一个对UI界面充满激情的 iOS 开发者,当谈及动画的时候,你会感受到 UIKit 的强大。让一个UIView 执行动画像做蛋糕一样简单。你不需要去想太多的关于随着时间变透明,旋转,移动或者晃动/伸展。但是, 如果你想将动画连接在一起,建立它们之间的依赖关系,代码可能会因许多嵌套的闭包和缩进变的相当冗长,难以理解。这篇文章,我将探讨如果运用响应式框架例如 RxSwift, 使代码看起来更...

2019-02-19 12:18:45 917 1

原创 RxSwift笔记 - RxCocoa 基础 (五) : UITableView + Refresh

TableView 通常要和 Refresh功能结合使用, Refresh 大都从网络获取数据然后进行刷新本文模拟数据请求和表格刷新数据获取, 返回列表数据/// 获取数据func getRandomResult() -> Observable<[SectionModel<String, Int>]> { let items = (0..<5...

2018-09-19 15:10:55 1224

原创 RxSwift笔记 - RxCocoa 基础 (四) : UITableView + RxDataSources

文章目录RxDataSources 介绍单分区 TableView方式一:使用自带的Section方式二:使用自定义的Section多分区的 TableView方式一:使用自带的Section方式二:使用自定义的SectionRxDataSources 介绍RxDataSources Github 地址: RxDataSources官方介绍:UITableView and UIColle...

2018-09-18 20:41:16 3055

原创 RxSwift笔记 - RxCocoa 基础 (三) : UITableView

单个分区的表格var tableView: UITableView!override func viewDidLoad() { super.viewDidLoad() tableView = UITableView(frame: view.bounds, style: .plain) // 注册cell tableView.register(UITa...

2018-08-23 17:44:46 1943

原创 RxSwift笔记 - RxCocoa 基础 (二) : UIGestureRecognizer

UIGestureRecognizerRxCocoa + UIGestureRecognizerlet tapGesture = UITapGestureRecognizer()view.addGestureRecognizer(tapGesture)Tap// 订阅方式实现tapGesture.rx.event.subscribe(onNext: { _ in...

2018-08-22 14:33:31 3043

原创 RxSwift笔记 - RxCocoa 基础 (一)

UILabelUITextFieldUITextViewUIButtonUISliderUIStepperUISwitchUISegmentedControlUILabel文字绑定到 UILabellet label = UILabel()// .../// 值绑定Observable.just("Hello RxSwift") ...

2018-08-21 20:26:09 2661

原创 RxSwift笔记 - Schedulers (调度器)

调度器(Schedulers)调度器(Schedulers)是 RxSwift 实现多线程的核心模块,它主要用于控制任务在哪个线程或队列运行.RxSwift 中的几种 SchedulerCurrentThreadScheduler:表示当前线程 Scheduler。(默认使用这个)MainScheduler:表示主线程。如果我们需要执行一些和 UI 相关的任务,就需要切换到该 Sc...

2018-08-16 20:17:37 1251

原创 RxSwift笔记 - 特征序列 (Single/Completable/Driver)

特征序列 可以看作是 Observable 的另外一个版本。它们之间的区别是:Observable 是能够用于任何上下文环境的通用序列而 特征序列 可以帮助我们更准确的描述序列。同时它们还为我们提供上下文含义、语法糖,让我们能够用更加优雅的方式书写代码Single它不像 Observable 可以发出多个元素,它要么只能发出一个元素,要么产生一个 error 事件。...

2018-08-14 21:21:38 1472

原创 RxSwift笔记 - Mathematical and Aggregate Operators

ConcattoArrayReduceConcat concat 会把多个 Observable 序列合并(串联)为一个 Observable 序列 并且只有当前面一个 Observable 序列发出了 completed 事件,才会开始发送下一个 Observable 序列事件。let subject1 = BehaviorSub...

2018-06-05 17:35:46 334

原创 RxSwift笔记 - Conditional and Boolean Operators

AmbContainsDefaultIfEmptySkipUntilSkipWhileTakeUntilTakeWhileAmb 在多个源 Observables 中, 取第一个发出元素或产生事件的 Observable,然后只发出它的元素let subject1 = PublishSubject<Int>()let s...

2018-06-03 22:56:05 449

原创 RxSwift笔记 - Observable Utility Operators

DelayDoMaterializeDematerializeObserveOnSubscribeOnTimeoutUsingDelay 该操作符会将 Observable 的所有元素都先拖延一段设定好的时间,然后才将它们发送出来Observable.of(1, 2, 1) .delay(3, schedul...

2018-06-03 12:22:53 350

原创 RxSwift笔记 - Error Handling Operators

CatchErrorCatchErrorJustReturnRetryDebugCatchError 从一个错误事件中恢复,将错误事件替换成一个备选序列let sequenceThatFails = PublishSubject<String>()let recoverySequence = PublishSubject&l...

2018-06-02 17:30:06 317

原创 RxSwift笔记 - Combining Observables

CombineLatestMergeStartWithSwitchLatestZipCombineLatest 当两个Observables中的任何一个发射了数据时,使用一个函数结合每个Observable发射的最近数据项,并且基于这个函数的结果发射数据。let first = PublishSubject<String>(...

2018-06-02 17:16:03 696

原创 RxSwift笔记 - Filtering Observables

DebounceSingleDistinctUntilChangedElementAtFilterIgnoreElementsSampleSkipTakeTakeLastDebounce 过滤掉高频产生的元素 debounce 常用在用户输入的时候,不需要每个字母敲进去都发送一个事件,而是稍等一下取最后一个事件。Obs...

2018-05-27 22:14:58 324

原创 RxSwift笔记 - Transforming Observables

mapflatMapflatMapLatestconcatMapscangroupBybufferwindowmap 该操作符通过传入一个函数闭包把原来的 Observable 序列转变为一个新的 Observable 序列Observable.of(1, 3, 5, 7, 9) .map({ $0 * 10 }) .s...

2018-05-27 15:36:50 389

原创 RxSwift笔记 - Creating Observables

create()just()from() / of()repeatElement()generate()deferred()range()interval()timer()empty()error()never()create() 使用一个函数从头创建一个Observable/// 创建可观察对象let id = Obs...

2018-05-24 22:38:29 433

原创 RxSwift笔记 - Subjects

Subjects 同时充当了 Observer 和 Observable 的角色, 既是可被监听的序列也是观察者有许多 UI 控件都存在这种特性,例如UITextField 的当前文本,UISwitch 的开关状态,UISegmentedControl 的选中索引号,UIDatePicker 的选中日期等等。常见的 Subject:AsyncSubjectPublishSub...

2018-05-23 22:06:11 371

原创 RxSwift笔记 - Observer 观察者

AnyObserverBinderBinder 在 RxCocoa 中的应用UIControl + RxUILabel + RxUIView + Rx观察者(Observer)介绍 观察者(Observer)的作用就是监听事件,然后对这个事件做出响应。或者说任何响应事件的行为都是观察者常见观察者AnyObserver - 任意一种观察者...

2018-05-22 21:52:01 957

原创 RxSwift笔记 - Observable 可观察序列

Observable - 可被监听的序列Observable 的生命周期Event 事件特征序列SingleCompletableMaybeDriverControlEventObservable - 可被监听的序列Observable 用于描述元素异步产生的序列Observable 这个类是 Rx 框架的核心,我们可以称它为可观察序列。...

2018-05-17 16:27:17 1032

原创 RxSwift笔记 - 函数响应式编程

常见编程模式函数式编程 - Functional Programming响应式编程 - Reactive Programming函数响应式编程 - Functional Reactive Programming函数式编程 - Functional Programming 函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数。我...

2018-05-16 16:45:24 478

原创 RxSwift笔记 - 全局思维导图

个人 RxSwift 思维导图整理此图来自网络PS: 如过需要原图, 请留下邮箱

2018-05-15 10:19:24 712 3

原创 RxSwift笔记 - 学习资源分享

[特此申明】:以下资源摘自多位优秀博主文章,其联系已指出在次感谢各位前辈给 Rx 爱好者铺路,谢谢!书籍RxSwift - By Raywenderlich GitBookRxSwift 中文文档 - By Beeth0venReactiveX文档中文翻译 - By Mcxiaoke 视频从零开始RxSwift探险实战视频课程 - By 李勇Lea...

2018-05-15 09:50:55 1704

原创 RxSwift笔记 - 简单介绍

RxSwiftRxSwift 是 ReactiveX 家族的重要一员, ReactiveX 是 Reactive Extensions 的缩写,一般简写为Rx。ReactiveX 官方给Rx的定义是,Rx是一个使用可观察数据流进行异步编程的编程接口。ReactiveX结合了观察者模式、迭代器模式和函数式编程的精华。ReactiveX 不仅仅是一个编程接口,它是一种编程思想的突破,它...

2018-05-13 22:03:48 1379

原创 iOS - 常用 Animations 动画总结

动画在软件开发中用的非常频繁,没有动画的软件,就类似于僵尸;所以对 iOS 常用的动画进行归纳总结,参考官方文档以及 UIView 和 QuartzCore 文档,受益颇多UIViewAnimationUIView 一般形式动画UIView 闭包式动画基础动画关键帧动画转场动画Core Animation 核心动画 基于 CALayer 层级的动画CAAnimati

2018-01-10 16:45:55 2545 1

原创 [Python] - 爬虫之抓取 Boss直聘 数据到 Excel 中

声明:此博客爬取的数据只为学习爬虫使用,绝非广告程序介绍文件目录├── Zhipin_spider # 文件夹│ ├── spider_main.py # 调度器。是爬虫的入口,管理各个类│ ├── html_downloader.py # 下载器,负责网页内容的下载│ ├── html_parser.py # 解析器,负责解析数据,获取有价值的数据

2018-01-07 17:47:27 6268

原创 [Python] - 爬虫之 Selenium 的使用

Selenium 介绍安装安装 SeleniumMac OS 系统安装浏览器驱动器 Drivers快速入门简单尝试使用 Selenium 写测试案例页面操作和网页交互填充表单拖放弹出对话框导航历史和位置Cookies元素查找总体概述通过 ID 查找通过 Name 查找通过 XPath 查找username 查找方法Clear 按钮查找通过链

2018-01-06 18:14:44 669

原创 iOS - 控制器自定义动画跳转 [导航跳转]

参考资料:Apple 开发文档 Customizing the Transition AnimationsWWDC 2013 Custom Transitions Using View Controllers图例:跳转的动画有很多,全部可以自定义创建自定义转换你必须遵循三个步骤:1、创建一个类,并实现了 UIViewControllerAnimatedTransitioning 协议2、创建一个

2018-01-04 15:12:43 1550 2

原创 iOS - 控制器自定义动画跳转 [模态跳转]

参考资料:Apple 开发文档 Customizing the Transition AnimationsWWDC 2013 Custom Transitions Using View Controllers图例:跳转的动画有很多,全部可以自定义创建自定义跳转必须遵循的三个步骤:1、创建一个类,并实现了 UIViewControllerAnimatedTransitioning 协议2、创建一个

2018-01-04 11:39:53 734

原创 [Python] - 爬虫之Beautiful Soup的基本使用

Beautiful Soup的简介Beautiful Soup 是一个可以从HTML 或 XML 文件中提取数据的 Python 库,最主要的功能是从网页抓取数据官方解释如下: Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。

2017-12-24 16:36:50 858

原创 [Python] - 爬虫之Requests基本使用

Requests 是一个非常强大的 HTTP 请求库,基于 urllib,使网络请求变的非常简洁 官方文档Requests 官方文档安装利用 pip 安装 $ pip3 install requests利用 easy_install easy_install requests初步尝试首先我们引入一个小例子来感受一下import requestsr = requests.get("htt

2017-12-22 17:05:58 756

原创 [Python] - 爬虫之Urllib库的基本使用

1.获取一个网页HTML内容一个网页,实质上就是一段HTML代码,加 JS、CSS,如果把网页比作一个人,那么HTML便是他的骨架,JS便是他的肌肉,CSS便是它的衣服。所以最重要的部分是存在于HTML中的,下面我们就写个例子来获取一个网页下来。# 引入 urllib request 模块import urllib.request# 直接请求网页response = urllib.reques

2017-12-21 14:39:39 2526

原创 [Python] - 爬虫之lxml库的用法

`lxml` 用法源自 `lxml python` 官方文档,更多内容请直接参阅官方文档[lxml 官方文档](http://lxml.de/index.html)

2017-12-18 17:47:20 14655 1

原创 [Python] - 爬虫之简介和基本原理

爬虫简介爬虫,即网络爬虫,可理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛,如果它遇到资源,那么它就会抓取下来。一句话形容爬虫:一段自定抓取互联网信息的程序爬虫的作用取互联网数据,为我所用!简单爬虫架构运行流程URL管理器URL简单介绍 URL,即统一资源定位符,也就是我们说的网址,统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示

2017-12-18 15:18:37 1203

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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