![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Swift
Swift开发
哈尔滨的酸柠檬
掌握iOS、MacOS、Flutter、PHP、前端、微信小程序开发技术,正在学习嵌入式开发知识
展开
-
Swift 调用C++代码
1.创建c++文件:Person.cpp和Person.hpp//// Person.cpp//#include "Person.hpp"#include "PersonExtern.h"Person::Person(){ age = 12; sex = true; name = "LINGLemon";}Person::Person(const char* name , const int age , const bool sex){ this-原创 2021-08-30 11:28:39 · 2331 阅读 · 0 评论 -
Swift 调用C代码
1.创建c文件:testC.h和testC.ctestC.h内容如下:#ifndef testC_h#define testC_h#include <stdio.h>void showValue(int *value);#endif /* testC_h */testC.c内容如下#include "testC.h"void showValue(int *value) { printf("old value = %d\n",*value);原创 2021-08-30 10:51:46 · 658 阅读 · 0 评论 -
Swift 沙盒文件转Data
对应Objective-C的NSData的使用,OC版:NSData *tmpData = [NSData dataWithContentsOfFile:tmpPath options:NSDataReadingMappedIfSafe error:nil];Swift版:let fileData : Data = FileManager.default.contents(atPath: item.path)!原创 2021-08-30 10:10:28 · 1573 阅读 · 0 评论 -
2021 Cocoapods的简单安装、使用与更新版本(含M1安装方法)
Cocoapods的作用1 管理第三方框架2 自动下载第三方框架,而且会自动帮我们配置,不需要添加额外的第三方框架或者是动态库之类当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。原创 2016-05-10 15:17:44 · 6864 阅读 · 0 评论 -
iOS开发 OC项目调用Swift方法
为防止出问题,建议以这样的方法做:1.建一个OC工程命名为SwiftOC2.新建一个swfit文件命名为Test.swift,会弹出提示,选择Create Bridging Header建立桥接文件,系统会建立“工程名-Bridging-Header.h”20160112200003812.png3.配置工程设置Defines Module 为Yes设置Product Module Name 为当前工程名此时系统会为工程创建一个“工程名-S...原创 2020-12-14 09:52:49 · 2085 阅读 · 0 评论 -
Swift 制作静态库
Github地址:https://github.com/LINGLemon/LXFSwiftAppSwift不支持.a的静态库,因此只能制作.framework的静态库动态库和静态库的区别库:一段二进制文件+加头文件,使用场景一个是供别人使用,一个是在代码改动较小,减少编译时间,因为只是一段二进制文件,Link一下,即可使用.Framework: 一种打包方式,简单将二进制文件、头文件和其他一些信息聚合在一起。iOS中的Framework分类:系统级别: Dynamic Framew原创 2020-07-20 14:45:27 · 1277 阅读 · 0 评论 -
Swift 定时器
Github地址:https://github.com/LINGLemon/LXFSwiftAppimport UIKitclass TimerViewController: UIViewController, UITableViewDataSource, UITableViewDelegate { let dataList = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21,]原创 2020-07-07 14:23:27 · 1746 阅读 · 1 评论 -
Swift 制作Swift版的Framework及使用
iOS的静态库和动态库iOS 提供了.framework与.a两种方式制作 SDK 的方式。两者的区别在于, Framework 以包形式的存在,内部包含了 二进制文件、.h文件、资源文件等。而 .a文件实际上就是 二进制文件,如果要真正使用,还需要提供必要的.h文件和相应的资源文件。另外.framework可以是静态库或者动态库(只有苹果官方才能制作动态库),.a则一定是静态库。两者主要的创建方式看下图:本文主要介绍Framework的一些知识,以及如何在 Swift 平台上制作 Fr.原创 2020-07-06 15:28:31 · 3614 阅读 · 2 评论 -
iOS开发 Swift项目如何使用oc的代码
github demo:https://github.com/LINGLemon/LXFSwiftAppSwift项目中直接创建oc文件创建一个swift项目 在swift项目中随便创建一个oc文件. Xcode 会弹框子,提示如下 选择后,Xcode 会自动生成一个 .h 文件,文件名: "xxxx项目-Bridging-Header.h" 在 "xxxx项目-Bridging-Header.h" 中导入将需要在swift中使用的OC文件即可 在swift项目中直接使用即可也可以.原创 2020-07-06 14:39:23 · 1008 阅读 · 0 评论 -
Swift学习:协议
github地址:https://github.com/LINGLemon/XFAVFoundation一、协议的基本语法下面是协议的一些基本语法:1.定义一个协议protocol SomeProtocol { //这里是协议的定义部分}protocol AnotherProtocol{ //这里是协议的定义部分}2.自定义类型遵循协议使用冒号,遵循多个协议时,各协议间使用逗号分隔struct SomeStructure: SomeProtoco..转载 2020-07-03 17:35:04 · 210 阅读 · 0 评论 -
Swift 单例的实现与解析
单例 Singleton 是设计模式中非常重要的一种,在 iOS 中也非常常见。在之前的面试过程中也被问到过单例相关的问题,当时感觉自己答得不是很好,后来也是又深入研究了一下。本文主要是简单分析一下单例,并且讨论了一下 Swift 中单例的实现。Singleton 基本介绍单例是什么?单例模式(Singleton Pattern)是最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建转载 2020-07-03 10:56:31 · 1009 阅读 · 0 评论 -
Swift WKWebView详细解读
github地址:https://github.com/LINGLemon/LXFSwiftApp1.基本方法和属性首先介绍下WKWebView的一些常用的方法和属性:实际使用中,一般还要搭配使用到WKUIDelegate和WKNavigationDelegate中的一些方法。下面分别介绍这两个代理中的一些方法:WKUIDelegate(1)WKWebView创建初始化加载的一些配置func webView(webView: WKWebView, createWebViewWithC原创 2020-07-03 10:15:06 · 6927 阅读 · 3 评论 -
Swift 跳转到storyboard创建的界面
let destinationStoryboard = UIStoryboard(name:"storyboard文件名", bundle:nil)let destinationViewController = destinationStoryboard.instantiateViewController(withIdentifier: "控制器的id(在storyboard中设置)")self.navigationController?.pushViewController(destinationV.原创 2020-07-01 12:03:18 · 708 阅读 · 0 评论 -
Swift 字符串转类型
let projectName = Bundle.main.infoDictionary!["CFBundleExecutable"] as? Stringlet className = projectName! + "." + controllerNamelet vc = NSClassFromString(className) as! UIViewController.Typelet viewController = vc.init()self.navigationController?.pu.原创 2020-07-01 11:48:12 · 500 阅读 · 0 评论 -
Swift 自定义UITableView
github demo:https://github.com/LINGLemon/LXFSwiftAppUITableView是我们开发过程中比较常用的,用于显示一系列对象,UITableView继承自UIScrollView,UIScrollView可以在任意方向滑动,而UITableView只在垂直方向上滑动。UITableView中的内容是由UITableViewCell负责显示的。1. UITableViewCellUITableView由UITableViewCell组成,UITa转载 2020-07-01 10:21:44 · 1970 阅读 · 0 评论 -
iOS13 Scene Delegate详解
iOS13 项目中的SceneDelegate类有什么作用?自从Xcode11发布以来,当你使用新XCode创建一个新的iOS项目时,SceneDelegate会被默认创建,它到底有什么用呢。在本文中,我们将深入探讨iOS 13和Xcode 11的一些变化。我们将重点关注SceneDelegate和AppDelegate,以及它们如何影响SwiftUI、Storyboard和基于XIB的UI项目。通过阅读本文你将了解到:SceneDelegate和AppDelegate的新变化 他们是如何合作转载 2020-06-30 16:33:43 · 1025 阅读 · 0 评论