本文介紹在iOS開發(fā)中,Swift實現(xiàn)清除緩存功能。主要分為統(tǒng)計緩存文件大小和刪除緩存文件兩個步驟:
創(chuàng)新互聯(lián)公司企業(yè)建站,10余年網(wǎng)站建設經(jīng)驗,專注于網(wǎng)站建設技術,精于網(wǎng)頁設計,有多年建站和網(wǎng)站代運營經(jīng)驗,設計師為客戶打造網(wǎng)絡企業(yè)風格,提供周到的建站售前咨詢和貼心的售后服務。對于網(wǎng)站設計、成都網(wǎng)站制作中不同領域進行深入了解和探索,創(chuàng)新互聯(lián)在網(wǎng)站建設中充分了解客戶行業(yè)的需求,以靈動的思維在網(wǎng)頁中充分展現(xiàn),通過對客戶行業(yè)精準市場調(diào)研,為客戶提供的解決方案。
繼續(xù)上一篇 開始用Swift開發(fā)iOS 10 - 18 Search Bar 和 UISearchController ,這一篇使用 UIPageViewController 構(gòu)建介紹頁面,與使用 LaunchScreen.storyboard 的啟動頁不同。
類似 UINavigationController , UIPageViewController 也是一種容器類型的控制器。這種容器類型的控制器是用來管理其它多個控制器的。
如果容器內(nèi)的控制器頁面元素類似(上圖就是這種情況),可以通過一個控制器重復利用。
setViewControllers 方法是設置 UIPageViewController 管理的視圖控制器。
頁面指示就是一般在頁面下用于分辨當前是第一個頁面的幾個小點。
實現(xiàn) UIPageViewControllerDataSource 協(xié)議的兩個方法: presentationCount(for:) 表示總共有幾個小點(頁面)。
presentationIndex(for:) 表示當前頁面的索引。
不用默認的頁面指示,就要把上面兩個方法刪除,然后使用 UIPageControl 。
完成類似下面:
但因為之前是利用 RestaurantTableViewController 的 viewDidAppear 方法顯示介紹頁的,而 viewDidAppear 方法是頁面顯示后就調(diào)用一下,這樣就出現(xiàn)不停進入介紹頁。實際上只需要第一次打開app的時顯示介紹頁就可以了。
UserDefaults 是用來管理應用和用戶相關的設置的。也就是可以用 UserDefaults 存儲一些用戶相關的少量數(shù)據(jù),比如上面的是否看過介紹頁,也就是是否點擊過DONE按鈕了。
UserDefaults 也是通過單例模式進行操作的,通過類屬性 standard 獲取單例。
完成介紹頁。學習了 UIPageViewController 和 UserDefaults 。
Beginning-iOS-Programming-with-Swift
此文是學習 appcode 網(wǎng)站出的一本書 《Beginning iOS 10 Programming with Swift》 的一篇記錄
Swift 語言有很多先進的特性,不過實話實說(雖然我自己已經(jīng)為Swift貢獻了無數(shù)內(nèi)容),iOS開發(fā)角度,OC的二進制發(fā)行版本要小巧很多,在Mac和Linux上開發(fā)還沒有到達C++的成熟程度和兼容性,局限性還是比較大的;建議從C/C++/OC出身的程序員可以學習Swift,但是不要輕易放棄老本行,這是根本。
1:大家想使用混編的話,記住架橋。
2:當項目創(chuàng)建swift的時候,“文件名-swift”里面已經(jīng)包括了Swift文件和初始化等方法,注意的一點就是當OC調(diào)用Swift的時候。直接引用頭文件“文件名-swift”就可以,不要添加調(diào)用類***swift.h文件,否則文件會出現(xiàn)引用框架出現(xiàn)錯誤。
import UIKit
class KGCFeedBackView: UIView,UITableViewDataSource,UITableViewDelegate {
}
在ios的OC和Swift混合開發(fā)無非是2種,一種是在OC的項目中使用Swift語言開發(fā),這里就需要創(chuàng)建Swift文件(或者引用Swift寫的的第三方庫),另一種是在Swift項目中使用OC語言開發(fā),這里就需要創(chuàng)建OC文件,(或者引用OC寫的的第三方庫)
首先我們在一個已有的OC的項目中,創(chuàng)建一個Swift文件
這里Xcode就會自動提示我們?nèi)纾簣D1
Would you like to configure an Objective-C bridging header?
Adding this file to ocProjectUseSwift will create a mixed Swift and Objective-C target. Would you like Xcode to automatically configure a bridging header to enable classes to be accessed by both languages?
提示我們創(chuàng)建一個橋接的頭文件,當我點擊 “ Create? Bridging Header”,Xcode就給我們自動創(chuàng)建,自動創(chuàng)建的規(guī)則是:項目名+ "-Bridging-Header.h" 如圖2
同時在項目中創(chuàng)建一個Swift文件
然后在在 targets - Build Settings - Packaging 中設置Defines Module 為YES
設置完后開始使用,怎么在oc中使用Swift的類呢?
重點: 在文件中引用 #import "ocProjectUseSwift-Swift.h"? 記住不是我創(chuàng)建的SecondVC.swift,是“項目名-Swift.h"文件名 ,引入這個文件就引入了所有的Swift文件內(nèi)的類、方法、屬性
說明:這個文件是系統(tǒng)自動創(chuàng)建,自動添加所有我們創(chuàng)建的Swift的類的方法和屬性
前提是要在方法和屬性前面要加@objc 如圖3:
用@objc聲明好之后,在我們引用的是“項目名-Swift.h"文件名的?#import "ocProjectUseSwift-Swift.h" 內(nèi)就看到有標記了如圖4
這里分了3塊,紅色和綠色標記框內(nèi)是我們自己標記的oc可用的屬性和方法,藍色框內(nèi)是系統(tǒng)自己生成的oc可以初始化方法
具體使用就在oc文件中,如圖5:
此事,在這個OC創(chuàng)建的項目中,我們創(chuàng)建的Swift文件怎么使用OC創(chuàng)建的類呢?
這里就用到我們創(chuàng)建的橋接頭文件了,在圖2中的橋接頭文件,引入OC的頭文件,如圖6
就這樣很簡單,所以Swift文件的類都可以使用這個OC文件內(nèi)的類了,使用起,和OC調(diào)用OC的類一樣,如如圖7和圖8
Swift的項目中,第一次創(chuàng)建OC的文件,此時系統(tǒng)會自動幫我們創(chuàng)建橋接頭文件,如圖9
然后就有了和圖2一樣的橋接頭文件,剩下的就和圖6一樣,在橋接頭文件內(nèi)引入頭文件,即可使用OC的類,第三方庫如果也是OC寫的,在引入的時候也自動會加這個橋接頭文件,當然一個項目只能加一次,加過的就不需要加了
網(wǎng)站名稱:ios開發(fā)swift,ios開發(fā)swift有堆棧嗎
分享鏈接:http://chinadenli.net/article40/dsdeceo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設計公司、定制網(wǎng)站、網(wǎng)站建設、用戶體驗、小程序開發(fā)、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)