[Swift]iOS开发之用户首选项

    // MARK: - Properties
    let refreshInterval: NSTimeInterval = 10 //设置最短间隔刷新时间
    let refreshKey = "LastRefreshTime" //键值
    
    // MARK: - BuiltIn
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 查看plist文件...
        print("\(NSHomeDirectory())")//输出沙盒路径
        
        if shouldRefresh() {
            refresh()
        } else {
            print("Load Caches...")
        }
    }

 下面是刷新函数

func refresh() {
        print("Refresh...")
        resetRefreshTime()
    }

 下面是重设刷新时间

func resetRefreshTime() {
        let userDefaults = NSUserDefaults.standardUserDefaults()//获取实例对象
        userDefaults.setObject(NSDate(), forKey: refreshKey)//NSDate为当前时间,Key纪录当前时间,设置为刷新时间
        userDefaults.synchronize()//userDefoult一系列操作都是在内存中进行,如果想要保存到本地,需要synchronize操作
    }

 下面是判断是否应该刷新函数

func shouldRefresh() -> Bool {
        let userDefaults = NSUserDefaults.standardUserDefaults()
        let date = userDefaults.objectForKey(refreshKey) as? NSDate
        if date == nil {
            return true
        } else {
            let interval = NSDate().timeIntervalSinceDate(date!)
            return (interval > refreshInterval)
        }
    }

 

posted @ 2016-02-29 09:30  ybw123321  阅读(228)  评论(0)    收藏  举报