Swift中使用protocol的时候可以有默认实现

在使用swift进行开发过程中肯定少不了使用protocol去开发一些程序,在这个过程中,通过今天学习同事的代码发现一个我没见过的写法,经过同事讲解我明白了,原来在使用protocol开发的过程中还可以为它的接口方法实现默认的实现,也就是在其他类进行实现protocol的时候可以不去实现由默认实现的接口,这样就会使用接…

阅读全文 »
已阅读 44 次

Swift字典中可以插入nil

自己用swift开发才这么几次,并不熟悉所以在摸索过程中,在今天做东西的过程中由于需要用到字典里边需要插入nil,心安理得的使用如下写法感觉没有问题 let array = [[“key1″:”val1″,”key2″:”val2″,”key3”:nil],[“key1″:”val1″,”key2″:”val2”,”k…

阅读全文 »
已阅读 35 次

在Pod 私有库中存在mrc的类如何正确配置(-fno-objc-arc)

在做项目的过程中,建立了一个私有pod库,在这个库中存在mrc类文件这个时候如果在使用了arc的工程中引用这个pod的工程中手动设置当然也可以就是费时费力。现在我们来看看如何在私有库配置文件里配置自动添加arc配置即在BuildPhases -> Compile Sources中mrc文件添加-fno-objc-arc…

阅读全文 »
已阅读 676 次

UIView的Frame改变和动画需要在view加载后进行

在开发过程中写了一个动画就是类似于ActionSheet的一个view从底部动画出现并显示菜单,这个view是用自动布局完成,动画采用的是修改view的约束然后使用UIView的animate方法中包含view.layoutIfNeeded构建动画效果,刚写出来感觉有动画效果,可这个时候发现效果并不好,很意外的出现了弹…

阅读全文 »
已阅读 150 次

UIView重叠点击透过上层UIView

今天由于需求问题需要UIView的部分区域透过点击到下一层UIView所以搜索了一下资料发现只要重写pointInside就可以实现,swift代码如下 override func point(inside point: CGPoint, with event: UIEvent?) -> Bool { let f…

阅读全文 »
已阅读 127 次

IOS普通截图

//这个例子是直接截取的viewController UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, false, UIScreen.main.scale) self.view.layer.render(in: UIGraphicsGetCur…

阅读全文 »
已阅读 34 次

iOS数据持久化之数据归档遇到的问题

今天温习了一下数据持久化的知识,突然发现数据归档忘记怎么写了,于是就用swift重新温习了一下,期间还遇到两个小问题,现在记下来以便以后温习 //这里是写练习用的一个归档数据类 public class Node:NSObject,NSCoding { public var nId:Int? public var na…

阅读全文 »
已阅读 31 次

设置格式控制

cout.setf(ios_base::fixed,ios_base::floatfield); //可以显示完整小数位不适用E表示法 cout.setf(ios_base::boolalpha); //使bool类型显示正常bool格式而不是数字

阅读全文 »
已阅读 32 次

swift 中Map和FlatMap的区别

比如说有一个数组 var array = [1,2,3] 如果有个需求是需要用这个数组生成一个新数组为每个元素自身想家的结果数组,那么一般的做法是会通过遍历来完成这个需求,示例如下: var array2:[Int] = [] for item in array { array.append(item) } 这样生成的…

阅读全文 »
已阅读 49 次

Android持久化之存储文件

#Android持久化之存储文件 只能供存储轻量级数据,比如说开发过程总需要存储一些简单的配置就可以使用 ####示例代码如下 存储 public void save(String content) { FileOutputStream out; BufferedWriter writer = null; try { …

阅读全文 »
已阅读 56 次

Android数据持久化之SQLite数据库

sqlite数据库操作其实是用基础的sql语句来实现对数据库的操作的。 数据类型包含了integer表示整形,real表示浮点型,text表示文本类型,blob表示二进制类型。 create table Book ( id integer primary key autoincrement, author text, …

阅读全文 »
已阅读 68 次

获取联系人之动态获取权限

获取联系人之动态获取权限 联系人数据是用户比较隐私的数据,在去获取的时候需要动态申请权限,当然用户已经授权过的就不用再次申请直接获取联系人数据就行,下面是一个相应的Demo //首先AndroidManifest.xml文件里需要添加相应的权限配置,这是必须的要求 <uses-permission android…

阅读全文 »
已阅读 141 次