第一次指定纠删码策略,修改了一部分swift代码后,执行PUT object,就被一个bug拦住。产生bug代码段如下:try: with ChunkReadTimeout(self.client_timeout): mime_documents_iter = iter_mime_headers_and_bodies( request.env
转载 2024-08-14 12:10:41
30阅读
根本问题要追到OC——swift互调用的点上,在OC使用的过程中我们都知道是基于运行时的,那么在Swift使用过程中,因为swift追求性能所以就不可能在运行时去查找这个类。 也就是说 Swift 类型的成员或者方法在编译时就已经决定,而运行时便不再需要经过一次查找,而可以直接使用。那么在Swift调用OC时没有问题,如果OC调用swift代码的时候怎么办呢??解决起来也很简单,在 Sw
转载 2024-02-24 12:23:42
40阅读
本文写于2014.09.25最近iOS开发之新编程语言Swift在iOS开发圈内反响比较大,国内外都有很多教程或小示例。 虽然Swift这门语言仍然在不断的进化之中,而且变动还是比较大,苹果公司也不承诺目前所写代码会在将来兼容,但仍挡不住iOS开发者的热情。为什么要使用Swift调用Objective-C代码目前Swift语言所编写的应用才刚刚可以使用Xcode 6 GM版本提交,而Objec
swift 语言出来后,可能新的项目直接使用swift来开发。但可能在过程中会遇到一些情况,某些已用OC写好的类或封装好的模块。不想再在swift 中再写一次,哪就使用混编。 这个在IOS8中是同意的。 先中简单的入手,先研究在同一个project文件夹下混合使用的情况。 为了演示。先准备两个类 第一个是swift语言写的类,文件名称为 act.swift 1. import Foun
转载 2024-08-10 18:06:03
49阅读
swift代码转oc代码 (Crashing your app is the safe route)(Force-Unwrapping An Optional Is Safe Code!)You may think there is no safety net when you force-unwrap an optional. You’re telling the compiler, “I k
转载 2024-01-11 17:36:30
245阅读
迁移工作正好提供了一个重新审视现有 Objective-C 应用程序的机会,也可以通过 Swift 代码来更好的优化应用程序的体系架构,逻辑以及性能。直接的说,你将用先前学到的 mix and match 以及这两个语言间的互操作性来进行增量迁移工作。Mix-and-match 功能使得选择哪些特性和功能来用 Swift 来实现,哪些依然用 Objective-C 来实现变得简单。Swift
转载 2024-08-01 21:32:37
29阅读
最近在oc工程里要引用swiftMonkeypaws,需要使用oc调用swift技术,里面踩了很多坑,这里简单记录一下。1、oc调用swiftoc调用swift其实很简单,google一下就有很多的教程,可以参考文章1、2、3、4。总体上就是在要调用swift代码的时候,引入头文件 “模块名-Swift.h”,这个头文件对外不可显示,需要手动导入。可以在 Build setting 中查看: 现在
转载 2023-07-11 19:28:27
477阅读
一. 单例模式简介单例模式的作用 可以保证在程序运行过程,一个类只有一个实例,而且该实例易于供外界访问 从而方便地控制了实例个数,并节约系统资源单例模式的使用场合 在整个应用程序中,共享一份资源(这份资源只需要创建初始化1次),一般用于工具类。例如:登陆控制器,网络数据请求,音乐播放器等一个工程需要使用多次的控制器或方法。单例模式的优缺点 优点: 单例模式可以保证系统中一个类只有一个实例
转载 2024-07-19 14:51:14
50阅读
枚举为一种相关值定义了一个通用类型,从而可以让你在代码中类型安全的操作这些值。Swift中的枚举很灵活,不需要给每一个枚举中的成员都提供值。如果一个值(所谓 原时值) 要被提供给每一个枚举成员,那么这个值可以是字符串 字符 任意的整数值 或者浮点类型。而且 枚举成员可以指定任意类型的值来与不痛的成员值关联。你可以定义一组相关成员的合集作为枚举的一部分,每一个成员都可以有不同类型的值的合集与其关联。
转载 2023-12-01 10:43:14
92阅读
void test() {    //定义一种枚举类型   enum Season {spring, summer, autumn, winter};        // 定义一个枚举变量s   enum Season s =winter;}void test1() {    //定义枚举类型的同时定义一个枚举变量
原创 2022-12-09 14:55:32
89阅读
Swift无疑是iOS程序员的未来,但是目前苹果公司还在不端更新和改变Swift,甚至在语法层面还在不断探索,虽然xcode提供一些直接适配新版本Swift语法的快捷键,但给我们学习不免造成一些影响,这里是基于Swift3.0和OC的一些基础性知识的比较。一. 基础部分1.Swift的类型是在C和Objective-C的基础上提出的,Int是整型;Double和Float是浮点型;Bool是布尔型
swfit和OC间的 联系 1.swift句尾不需要分号 ,除非你想在一行中写三行代码就加分号隔开。  2.swift不要写main函数 ,程序默认从上往下执行  3.swift不分.h和.m文件 ,一个类只有.swift一个文件  4.swift不在有地址的概念 5.swift数据类型都会自动判断 , 只区分变量v
转载 2024-07-02 20:41:24
30阅读
Swift 挺好用的,但写给 OC 调用的 SDK 过程中遇到不少坑。 此教程包含,使用 Swift 代码,调用 OC 库(比如 CocoaAsyncSocket),一键打包支持 Bitcode 的 Framework ,兼容 OC 项目调用等目录新建 ProjectSwift Framework 调用 OC (无需求可略过)方便调试的 Framework一键打包通用的 Framework1.
转载 2023-10-16 19:20:43
680阅读
Cocoa框架早已烙上了不可磨灭的OC印记,而无数的第三方库都是用OC写成的,这些积累无论是谁都不能小觑。苹果采取了允许开发者在同一个项目中同时使用SwiftOC进行开发的做法,但要想实现互通,又需添加哪些桥梁? 虽然说Swift语言的初衷是希望能摆脱Objective-C的沉重的历史包袱和约束,但是不可否认的是经过了二十多年的洗礼,Cocoa框架早就烙上了不可磨灭的Objective-C的印
本文章将从两个方向分别介绍 OCswift 混编  1. 第一个方向从 swift工程 中引入 oc类   1. 1 如何在swift的类中使用oc类    1.2  如何在swift中实现oc的代理方法    1.3   如何在swift中实现oc的Block回调2 二个方向从OC工程中引入swift
直接上图:在Build Settings中搜索Packaging设置--将1处改为Yes,并记录2处名称,你可以随意修改2处名称,通常与项目名一致。然后新建或者拖入swift文件(如果弹出建立桥接文件的提示框可以不创建,在OC项目中无用,若Swift文件需要引用OC中的文件则可创建,在桥接文件中导入一次对应OC文件,swift的全部文件中均可使用,不需在swift文件中重复导入,这是swift的特
转载 2023-07-03 17:31:11
465阅读
swift中没有宏的概念,那么我们在swift使用宏的功能来提高效率呢?一、使用关键字 let 来声明一个常量 存储相应的值,以下代码声明了常量  myColor 来存储一种指定的颜色let myColor = UIColor(red: 0.2, green: 0.7, blue: 0.1, alpha: 1.0) 判断当前的系统版本let IOS9 = (UIDevice.c
写久了OC后来写swift,总感觉写着是swift的皮毛,但是实际上是OC的核心,这里整理了OC迁移至swift中的一些小细节。1 在当前类中,实例方法调用属性以及方法都可以将self省略掉,而且是建议省略2 selector是调用方法写法是:Selector("sayHello")或者是#selector(sayHello)3 swift中不同类型的值之间不能直接做运算,所以不同类型值做运算的时
转载 2024-07-04 09:20:56
45阅读
swiftOC的主要区别就是语法区别,其他大抵相同.区别1: swift中使用let定义常量,var定义变量.常量一经赋值,不可以进行修改,变量赋值后可更改.         swift能够根据右边的代码,推倒出该变量的准确类型.在实际开发中 使用常量多还是使用变量多?使用常量,更加安全,不能够被修改,在需要对该对象进行修改的时候 在修
转载 2023-07-03 16:58:36
387阅读
  这阵子一直在自学Swift, 因为之前iOS的开发一直用Objective-C, 所以习惯了C语言那种宏定义方式, Swift作为一款更加安全的语言, 放弃了C语言中的宏定义, 有效的防止预编译时代码宏替换的安全隐患, 但是也并非不能进行宏定义, 在这里我们可以像java一样进行全局常量的定义, 一样的方便快捷. 简单的宏通过常量设置即可, 复杂的宏就需要使用函数来返回了, 但是使用起来也会很
转载 2023-07-25 22:12:38
697阅读
  • 1
  • 2
  • 3
  • 4
  • 5