自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 用Cocopod建一个framework

framework 和 library的区别要了解什么是library。首先library分为static和dynamic。Static library是指有连接到一个文件,这个文件是有binary code,是在comile time feature,需要连接application里的binary,一般只会某个指定的application使用。而dynamaic一般会在多个application里使用,同时它是run time feature。一般来说static都是较大的文件,而dynamic会是比较

2020-06-18 03:29:10 289

原创 binary search

func binarySearch(searchNumber: Int, array:[Int]) -> Int? { var range = 0..<array.count let maxIndex = array.count - 1 let minIndex = 0 if searchNumber > array[maxIndex] || searchNumber < array[minIndex] { return

2020-06-18 01:48:37 187

原创 IOS: Custom Cell

本篇主要介绍如何在一个tableview加入不同的custom tableview cell。首先是UITableviewController:import UIKitclass ViewController: UIViewController { @IBOutlet weak var transactionTableView: UITableView! override func viewDidLoad() { super.viewDidLoad()

2020-06-18 00:17:27 173

原创 Swift:NetworkController

本篇主要介绍如何建一个networkController进行API Call。首先是APIRequestConfigureprotocol APIRequestConfigure { var url: String { get } var cachePolicy: URLRequest.CachePolicy? { get } var timeoutInterval: TimeInterval? { get } var header: [String:String]? {

2020-05-20 07:29:52 262

原创 MVVM programmatically building TableViewCell and downloadImage代码格式创建tableView cell和下载图片

先把Main Interface哪里去掉,因为将不会用到storyboard首先在AppDelegate里手动添加tableViewControllerimport UIKitimport CoreData@UIApplicationMainclass AppDelegate: UIResponder, UIApplicationDelegate { var window:...

2019-09-25 05:17:03 172

原创 IOS swift: 用MockSession进行unit test

在进行测试一个network call的时候,我们需要用mockSession来模拟这个api,然后在进行测试,因为在unit test里是不能进行真正的network call的。在unit test里,我们需要更快,更可靠的测试方法,所以一般在测试一个function里的network call的时候,我会建一个mocksession,来模拟api call的部分,接着再用一个本地文件,大多情...

2019-09-20 04:17:12 422

原创 IOS swift:用MVVM格式下载和展示图片

MVVM是ios中编程经常会用到的格式,MVVM大致主要分为三个部分,第一个Model,模型,把会用到的数据模型建立出来,第二个是View,视图,基本上就是viewController,第三个是ViewModel,视图模型,一般是写需要在视图上展示背后的逻辑首先是Modelimport Foundationstruct StructFashion: Decodable { let ...

2019-09-19 03:58:55 316

原创 swift: IOS里加载图片到collection view

我将建一个tableview 并在tableview里放一个collection view,并call很多个api加载图片到每个collection view。首先是UI我一会会列出三个不同到种类(category),每一个种类我会建一个array,然后每个array里会有很多张图片的api下面是我的模型import Foundationstruct Object: Decodable...

2019-09-09 10:35:03 637

原创 用URLSession里configuration(配置)的用法和区别

在编写一个app的时候,大部分时间都会调用api,然后根据这些api里的数据,我们在做出另外一些其他操作。最常用到的有苹果自带的URLSession,还有Alamofire也是非常好用来调用api。在URLSession里,有三种不同的配置,第一种的default,就是直接调用api,不在做什么其他操作,第二种是ephemeral,这种配置在我们调用api的时候,不会保存任何cache data,...

2019-09-03 10:41:54 1471

原创 swift: Fibonacci sequence 斐波那契数列

斐波那契数列:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, …这个数列的逻辑是前一个数加前两个数得到最新的数,比如34 = 21 + 12, 21 = 13 + 8.。。。。首先是用recursion的解法得到最新的数func fibs(n: Int) -> Int { if n == 0 { return 0 } else if ...

2019-09-01 05:27:51 390

原创 reverse word反转单词 正句变反句

比如我有有一个string,“hello how are you”, 我想把它变成一个反句 “olleh woh era uoy”, 这里不是指把句子变反,而是把里面每个单词变成反向func reverseWords(someString: String) -> String { let allWordsArray = someString.components(separated...

2019-08-30 06:02:29 843

原创 swift: matrix 转化 array

关键字: 下标, 初始化, matrix, get set, assert本篇是关于struct基本设定和用法,以及如何将一个matrix,以array 的形式排列出来struct Matrix { var rows, columns: Int var grid: [Int] init(rows: Int, columns: Int) { self.ro...

2019-08-29 23:34:13 298

原创 Swift: palindrom测试数组是否是回文

这个function是测试某一个单词是否是回文回文: 把相同的词汇或句子,在下文中调换位置或颠倒过来,比如 racecar, 它反过来还是 racecar, 比如 madam, 反过来也还是madam下面是代码func palindrom(word: String) -> Bool { var array: [Character] = [] for i in ...

2019-08-29 10:43:45 285

原创 find commen elements in array 在数组中找到相同的元素 Swift

这个function的目的是在一组数组中,找到相同的元素,并列出重复出现了多少次,下面是代码func findCommonElement(array: [String]) -> [String:Int] { var colorDic : [String:Int] = [:] for color in array { if let count = colorD...

2019-08-29 06:30:27 407

原创 两数相加 two-sum

本篇主要介绍一道基础算法题,两数相加,目的我们首先有一个值,还有一个array中,找出是否其中有两个数相加起来等于这个值,这里有三种解法,先从complexity最高的一种开始介绍// 1. 暴力解 O(n^2)func bruteForceSolution(array: [Int], sum: Int) -> Bool { for i in 0..<array.count...

2019-08-29 01:46:44 302

原创 Merge Sort 归并排序

本篇主要介绍merge sort(归并排序) 用swift的代码形式实现func mergeSort(array: [Int]) -> [Int] { guard array.count > 1 else { return array } let leftArray = Array(array[0..<array.count/2]) ...

2019-08-28 07:22:01 156

原创 binary search 二分法检索

本篇介绍一个比较简单的搜索算法, binary search,二分法检索, 下面是代码func binarySearch(array: [Int], numberToSearch: Int) -> Bool { let minIndex = 0 let maxIndex = array.count - 1 let midIndex = maxIndex / 2 ...

2019-08-28 04:28:20 244

原创 IOS WatchKit基础

watch上的app是建立在IOS上的,主要是在一个watch extension上的文件中运行,相比较与其他市面上的手表app,watchkit上的app都是基于手机上的app运行,然后在传输到手表上,很多运行也是在ios的background上。下面是一个简单的范例首先是file -> Target -> WatchKit app之后在interfaceBuilder里建一个t...

2019-08-25 12:36:31 260

原创 CoreData里的增删改查

沿着上篇 https://blog.csdn.net/SwiftIOS_watsUp/article/details/100006664本篇继续讲CoreData,主要是如何在CoreData里增删改查(CRUB)首先是增(insert)func createObject<T: NSManagedObject>(entity: T.Type, storeType: String ...

2019-08-23 00:51:08 429

原创 IOS: CoreData

本篇主要介绍IOS Swift 中CoreData的基本用法和一些自己的理解CoreData是一个数据库框架,可以让在app上本地存储一些数据,也有数据库基本的增删改查功能CoreData有三部分: Model, PersistentContainer, Context首先先建一个model这里我建了一个简单的模型,entity的名字是person,其中这个entity有三个属性,分别是...

2019-08-22 04:59:08 468

原创 Notification and Observer

本篇会介绍Notification 和 observer 的基础用法,这里我先基本设定两个viewController,一个viewController,一个是detailViewController。我们的最终目的是点击Detail按键,去到detailViewController,点击RED,viewController的背景颜色会变成红色,点击blue,背景颜色变成蓝色。下面是viewC...

2019-08-22 01:11:17 189

原创 IOS swift: Delegate and Protocol

本篇主要介绍UIView里的delegate 和 protocol的一个简单的example和如何去使用首先我们先做一个简单的UIView,在ViewController里有一个去到DetailViewController的button,在DetailView里我们有两个Button,一个是blue,一个是red。我们最终的结果是当我们进到detai以后,点击red,第一个View的背景颜色会变...

2019-08-21 01:59:27 378

原创 MVVM Example

MVVM Example用MVVM的设计做一个简单的UITableview首先是Model我这里用一个rest api “https://api.tvmaze.com/shows/216?embed=seasons&embed=episodes”把我想要的properties用struct 列出来,这样在一会破解json的时候比较方便使用为了方便使用,我这里只需要 _embedd...

2019-08-20 21:54:48 286

空空如也

空空如也

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

TA关注的人

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