OSX中添加自定义的环境变量路径
前言
每次使用Cocoapods安装一些库时,直接使用pod install会非常慢(CocosPods卡在Analyzing dependencies的解决方法),需要使用几个参数才可以愉快。
但是后面的参数也挺长的,每次手动输入也太麻烦了,所以如果我们把这个命令写成一个可执行的脚[……]
每次使用Cocoapods安装一些库时,直接使用pod install会非常慢(CocosPods卡在Analyzing dependencies的解决方法),需要使用几个参数才可以愉快。
但是后面的参数也挺长的,每次手动输入也太麻烦了,所以如果我们把这个命令写成一个可执行的脚[……]
很多时候当我们在一个文本框中输入信息后,按了确认或者返回键需要隐藏键盘,或者在其他空白区域点击屏幕后也需要隐藏屏幕。
这时肯定就需要让相应的控件响应Tap事件(点击事件),这样我们才能处理。
在IOS中有一个概念叫First Responder,[……]
MBProgressHUD是一个使用OC语言写的提示框库,支持常用的进度条提示、菊花等待提示、纯文本提示以及自定义提示。当然最重要的是可以异步执行一些网络任务或者需要长时间操作的任务时显示等待提示框。
在Swift项目中,如何使用呢,其实灰常的简单,如果之前练习过在Swift项[……]
在创建一个项目时,如果选择了CoreData,那么会在AppDelegate类中为我们创建一些和CoreData相关的代码,我们把这些代码提取出来,稍作修改便可以得到一个适应我们自己项目的CoreData操作库。
我将CoreData操作库分为2个类,分别是底层的SCCoreD[……]
CoreData是苹果为我们封装的一个ORM(对象关系映射)库,可以很方便的把数据库中的数据转为一个对象,把一个对象保存到数据库中。如同微软的Entity Framework、Java的hibernate~
在学习CoreData前,需要先清楚几个类的作用和关系,本文就主要对C[……]
sqlite数据库相信各位早已耳闻,当年我在做C# winform时就已经玩过了,非常轻巧的一个数据库,数据库仅一个文件,即建即用。
在ios中,也同样支持sqlite。目前有很多第三方库,封装了sqlite操作,比如swift语言写的SQLite.swift、苹果官网也为我们[……]
在IOS中,我们可以通过NSFileManager类对文件进行操作,比如创建、复制、移动、删除等。使用方法也很简单。
import Foundation public class SCFile{ public class func getD[......]
在IOS中,对象的序列化和反序列化分别使用NSKeyedArchiver和NSKeyedUnarchiver两个类,我们可以把一个类对象进行序列化然后保存到文件中,使用时再读取文件,把内容反序列化出来。这个过程通常也被称为对象的编码(归档)和解码(解档)。
需要注意的是,NSK[……]
数据存储是开发中必不可少的一个功能,我们可以通过Sqlite数据库手动创建数据库,定义数据表;可以使用IOS的数据框架CoreData,更方便的操作数据库;也可以直接读写文件系统;这里将介绍另外一种常用的方法:使用NSUserDefaults类,以字典形式保存数据,IOS会自动把字典[……]
IOS中调用设备的相机拍照、录制视频,使用UIImagePickerController类,根据不同的SourceType来区分是拍照还是录视频。
import Foundation import UIKit import MobileCoreSer[......]
Image图片的处理,把图片转为NSData等常用操作
import Foundation import UIKit public class SCImage{ /** 获取JPG图像的NSData对象 :param: i[......]
Location地址位置通常用来在App刚启动时获取用户所在城市,CLLocationManager类就是专门处理Location的。
import Foundation import CoreLocation public class SCLoca[......]
String字符串的常用方法。
import Foundation // MARK: - 字符串 extension String { /** 字符串截取,从头开始 :param: endIndex 从头开始截取,到哪一[......]
获取路径也是用的非常多的,IOS的沙盒机制保证每一个App都有自己的数据目录。
import Foundation /** * 路径(Path)类 */ public class SCPath: NSObject{ /** 获取程序的主目录[......]