swift API变来变去也是头痛 str.replacingPercentEscapes(using: .utf8)!
let res = String(str.characters.filter { $0 != " " }) //去除空格 //过滤特殊符号 NSString *str2 = [passwdInput.text stringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceAndNewlineCharacterSet]];
NSCharacte
贡献者:赵大财 博客:https://my.oschina.net/zhaodacai GitHub:https://github.com/dacaizhao 邮箱: dacai_zhao@163.com QQ:327532817 ============================= 下载地址:https://github.com/dacaizhao/swiftMVP 喜欢就给我star
func kGetUsedSSID()->String{
let interfaces = CNCopySupportedInterfaces()
var ssid = ""
if interfaces != nil {
let interfacesArray = CFBridgingRetain(interfaces) as! Array<AnyObjec
1. 截取前两个字符串 let htmlIndex = htmlString.index(htmlString.startIndex, offsetBy: 2) htmlString = htmlString.substring(to: htmlIndex) 2. 获取字符串的字符长度 htmlString.characters.count
贡献作者 -【XJDomain】 博客XJ: https://my.oschina.net/shengbingli/blog GitHub直播地址: https://github.com/lishengbing/XJDomainLive 01-基本使用-全局异步队列 DispatchQueue.global().async {
//耗时操作
} 02-主队列 DispatchQu
http://www.open-open.com/lib/view/open1474524707276.html 一、闭包的概念 有oc基础的都知道,闭包其实是oc里面的block,语法格式不一样,但作用是一样的。主要是用于callBack(异步回调)或者两个类之间的通信。它的本质一个函数,一个可执行的代码块,只是这个函数是没有名字的,也就是匿名函数。你也可以把他看作如 int、float一样,是
贡献作者 -【XJDomain】 博客XJ: https://my.oschina.net/shengbingli/blog GitHub直播地址: https://github.com/lishengbing/XJDomainLive 使用: createFrostBackground(img: imageV.image!, view: self.view) 方法: extension
贡献者:赵大财 博客:https://my.oschina.net/zhaodacai GitHub:https://github.com/dacaizhao 邮箱: dacai_zhao@163.com QQ:327532817 ============================= class ViewController: UIViewController,NSCacheDelega
贡献作者 -【XJDomain】 博客XJ: https://my.oschina.net/shengbingli/blog GitHub直播地址: https://github.com/lishengbing/XJDomainLive XJ--01 > 定义字符串类型的枚举 enum kBackgroundImageNameType : String {
// 蓝色<默认>
self.contentView.layer.shadowColor = UIColor.blue.cgColor
self.contentView.layer.shadowOffset = CGSize.init(width: 4, height: 4)
self.contentView.layer.shadowOpacity = 0.8
self.contentView.layer.sh
(点击上方公众号,可快速关注) 来源:RamboLu(@_LuLouis ) 链接:http://www.jianshu.com/p/27fd2a2b32e4 前言 Swift项目,为适配iOS10,无奈只能更新Xcode 8 ,可是发现一入3.0深似海,从此幸福是路人.于是边摸索边修改,在节前的完成代码迁移.节后在完成手头工作后,整理思路,把Swift3.0迁移的心得分享大家. 废话不多说分享下
//加载请求数据
func loadData(completion: @escaping (_ result:[String]) -> ()) -> () {
DispatchQueue.global().async {
print("耗时操作 \(Thread.current)")
//获取到的json结果数据
let json = ["姓名",
在Swift 3.0之前,我们可以这样fetch数据: var people = [NSManageObject]()
//1
let fetchRequest = NSFetchRequest(entityName: "Person")
do {
//2
let results =
try managedContext.executeFetchRequest(fetchRequest)
//
0.创建一个类:Person.swift //name属性是可选的,在需要的时候创建
//在手机开发中,内存非常宝贵,实际运行中很多属性不一定需要分配空间
var name: String? 1.重写构造函数,用字典为本类设置初始值 init(dict: [String: AnyObject]) {
super.init() //使用 self 的方法 'setValuesForKeys' 之
新建一个类:Person.swift,创建两个对象 //基本数据类型,如果定义成可选,运行时同样取不到,使用KVC就会崩溃
//var age: Int?
var age: Int = 0
//private 修饰的属性,使用运行时,同样获取不到属性(可以获取到ivar),也会让KVC崩溃
//private var title: String?
var title: String? 使用运行时
结构体实例总是通过值传递,类实例总是通过引用传递 先说说值类型和引用类型的区别 值类型被赋予给一个变量、常量或者被传递给一个函数的时候,其值会被拷贝 在 Swift 中,所有的结构体和枚举类型都是值类型。这意味着它们的实例,以及实例中所包含的任何值类型属性,在代码中传递的时候都会被复制。 引用类型在被赋予到一个变量、常量或者被传递到一个函数时,其值不会被拷贝。因此,引用的是已存在的实例本身而不是其
闭包是自包含的函数代码块,可以在代码中被传递和使用。Swift 中的闭包与 C 和 Objective-C 中的代码块(blocks)以及其他一些编程语言中的匿名函数比较相似。闭包可以捕获和存储其所在上下文中任意常量和变量的引用。被称为包裹常量和变量。 Swift 会为你管理在捕获过程中涉及到的所有内存操作。 闭包表达式语法有如下的一般形式: {
(parameters) -> retur
相关知识点: 修改项目名称两种方式 1.Bundle name 2.Bundle display name try 三种处理异常的方式
1
2
3
4
5
6
7
8
9
10
1
1.swift3.0中调用相机和相册会导致崩溃 1.需要在info.plist文件中加入两个键值对,如下:
1
2
3
1
2
3
/// 都是String类型,内容任意的字符串即可
Privacy - Photo Librar