Time of Update: 2017-01-13
1,SwiftyJSON介紹與配置SwiftyJSON是個使用Swift語言編寫的開源庫,可以讓我們很方便地處理JSON資料(解析資料、產生資料)。GitHub地址:https://github.com/SwiftyJSON/SwiftyJSON使用配置:直接 SwiftyJSON.swift 添加到項目中即可。 2,SwiftyJSON的優點同 NSJSONSerializationSwiftyJSON
Time of Update: 2017-01-13
1,tabBarItem圖片的推薦尺寸和最大支援尺寸下面是標籤欄(UITabBar)中tab按鈕表徵圖分別在1x、2x、3x下不會壓縮變形的尺寸:@1x : 推薦 25 x 25 (最大: 48 x 32)@2x : 推薦 50 x 50 (最大: 96 x 64)@3x : 推薦 75 x 75 (最大: 144 x 96) 下面是在2x下,左邊使用50 x 50的圖片,右邊使用64 x
Time of Update: 2017-01-13
swift開發之文字內容轉語音,只是將網上oc版本轉化為swift版本而已,有需要的同學拿去。xcode7 代碼如下複製代碼 swift2.0import UIKitimport AVFoundationclass ViewController: UIViewController { override func viewDidLoad() {
Time of Update: 2017-01-13
1,反射(Reflection)對於C#、Java開發人員來說,肯定都對反射這個概念相當熟悉。所謂反射就是可以動態擷取類型、成員資訊,同時在運行時(而非編譯時間)可以動態調用任意方法、屬性等行為的特性。以Java上的兩個知名架構(hibernate和spring)為例。hibernate的屬性對應就是通過反射來賦值的,spring的bean的建立就是根據配置的class來反射構建的。2,Objective-C 的
Time of Update: 2017-01-13
前一篇文章(Swift -
Time of Update: 2017-01-18
final關鍵字在大多數的程式設計語言中都存在,表示不允許對其修飾的內容進行繼承或者重新操作。Swift中,final關鍵字可以在class、func和var前修飾。通常大家都認為使用final可以更好地對代碼進資料列版本設定,發揮更佳的效能,同時使代碼更安全。下面通過執行個體代碼給大家介紹swift用final關鍵字來防止重寫。 /** 用final關鍵字來防止重寫 final,最後的,最終的;決定性的;不可更改的 final 修飾類的話,表示這個類不可以被繼承。
Time of Update: 2017-01-18
Swift 的字元是一個單一的字串文字並且是字元資料類型。下面是一個簡單的例子,使用了兩種字元常量:複製代碼 代碼如下:import Cocoalet char1: Character = "A"let char2: Character = "B"println("Value of char1 \(char1)")println("Value of char2 \(char2)")當上述代碼被編譯和執行時,它產生了以下結果:Value of char1 AValue of char2
Time of Update: 2017-01-18
雖然編寫任何程式設計語言,需要使用不同的變數來儲存各種資訊。變數不過是保留的記憶體位置來儲存值。這意味著,當建立一個變數,在記憶體中會保留一些空間。可能喜歡像儲存字串,字元,寬字元,整數,浮點數,布爾等各種資料類型的資訊。根據一個變數的資料類型,作業系統分配記憶體,並決定什麼可以儲存保留在儲存空間。內建資料類型Swift 為程式員提供內建以及使用者定義的種類資料類型。 以下是聲明變數使用最頻繁的基礎資料型別 (Elementary Data Type)的列表:Int 或 UInt -
Time of Update: 2017-01-18
用swift編寫自動錄音器,自動錄音和一般錄音的不同點在於:不需要像微信裡面需要按下錄音然後鬆手結束,而是根據說話聲音的大小自動判斷該錄音和該停止的點,然後可以等到錄音結束之後馬上播放出來。此效果很像會說話的湯姆貓那樣。在自動錄音的初始化階段需要建立兩個錄音對象,一個需要一直錄音充當監聽器的功能,另一個用來在需要的時燒錄音。具體流程大致如下準備工作這個項目使用swift寫的,設定的成員變數如下如果你不是在董鉑然部落格園看到本文請點擊查看原文。// 錄音器var
Time of Update: 2017-01-18
Swift是蘋果公司最新推出的程式設計語言,據很多人說,是用來”代替“Objective-C。但是沒有確切的證據。我花了一些時間對Swift二進位和運行環境實施逆向工程技術,然後我對Swift有些少許的發現。目前為止,結論就是:Swift是沒有訊息機制的Objective-C。對象信不信由你,Swift中的對象就是Objective-C的對象。在Mach-O二進位檔案中,__objc_classlist包含每個二進位檔案中類的資料。其結構如下所示: 複製代碼 代碼如下:struct
Time of Update: 2017-01-18
在這次IOS應用開發教程中,我們打算實現手勢識別。正如你所知道的,IOS支援大量的手勢操作,它們能提供了很好的應用控制和出色使用者體驗。讓我們開始吧!首先需要在Xcode中建立一個新的Single View Application:然後點擊Next,彈出的視窗要求你填寫項目設定。在第一欄 (“Product name”) 中填入項目名稱後,點擊Next.確保語言選擇的是 “Swift”.設計介面點擊 “Main.storyboard” 檔案,拖出6個
Time of Update: 2017-01-18
參數外部變數名一般情況下你可以不指定外部變數名,直接調用函數:複製代碼 代碼如下:func helloWithName(name: String, age: Int, location: String) { println("Hello \(name). I live in \(location) too. When is your \(age + 1)th birthday?")}helloWithName("Mr. Roboto", 5,
Time of Update: 2017-01-18
空值合并運算子和區間運算子今天主要看的內容是 Swift 中的基本運算子。記錄一下。Nil Coalescing Operatora ?? b 中的 ?? 就是是空值合并運算子,會對 a 進行判斷,如果不為 nil 則解包,否則就返回 b 。var a: String? = "a"var b: String? = "b"var c = a ?? b // "a"a = nilc = a ?? b // "
Time of Update: 2017-01-18
今天有同行問我,如何在tableview的headerview中添加點擊方法,今天就來簡簡單單說明一下,在swift中添加點選手勢的方法是:複製代碼 代碼如下:imagepath.addGestureRecognizer(UITapGestureRecognizer(target: self, action:
Time of Update: 2017-01-18
冒泡排序原理1.對需要排序的資料,倆倆進行比較,小的放前面,大的放後面2.依次對每一對相鄰的資料作步驟1的工作,當排序到最後一個元素的時候,我們能保證這個資料是最大。3.針對所有的元素重複以上的步驟,除了最後一個(這裡為什麼需要針對除了最後一個元素的全部元素做一次呢,因為最後一個元素已經是最大的不需要排序了,同時,由於元素的交換,交換上來的元素的大小不一定比前面的元素的大,所以需要再做一次)。4持續對越來越少的元素重複3的步驟,直到沒有任何一對元素需要比較。時間複雜度我們一般談最壞時間複製度n(
Time of Update: 2017-01-18
作為一種可與 Objective-C 相互調用的語言,Swift 也具有一些與 C 語言的類型和特性,如果你的代碼有需要,Swift 也提供了和常見的 C 代碼結構混合編程的編程方式。基礎資料型別 (Elementary Data Type)Swift 提供了一些和 C 語言的基本類型如char,int,float,double等價的 Swift 基礎資料型別 (Elementary Data Type)。然而,這些 Swift 的核心基本類型之間並不能隱式的相互轉換,如
Time of Update: 2017-01-18
與Objective-C中這部分內容相比,在Swift中switch得到了極大的改善。這是一件非常有趣的事,因為這還是沒有添加到Objective-C中,還是沒有打破Objective-C是C的超集的事實。第一件令人興奮的地方是可以對字串轉換。這也許正是你之前想要做,卻不能做的事。在Objective-C中如果要對字串用“switch”,你必須要使用多個if語句,同時要用isEqualToString:,像下面這樣:if ([person.name isEqualToString:@"Matt
Time of Update: 2017-01-18
取大於形態的能力被定義為繼承。一般一個類可以從另一個類繼承屬性和方法。類可以進一步劃分到子類和超類。子類:當一個類從另一個類繼承屬性,方法和功能被稱為子類超類:類包含屬性,方法和功能被其它類繼承稱為超類Swift 中類包含父類和調用存取方法,屬性,功能和重寫方法。另外,屬性觀察者也用於添加屬性和修改所儲存的或計算的特性的方法。基類一個類如果不從其它類繼承方法,屬性或功能,那麼它被稱為“基類”。複製代碼 代碼如下:classStudDetails{var stname:String!var
Time of Update: 2017-01-18
Swift和Objective-C
Time of Update: 2017-01-18
前言 首先所有的Model還是使用oc來寫——看到這一句是不是想關網頁了- - #,在swift裡面直接寫一直報錯所以就將就用oc來寫了,這裡主要是分享一下搭配Alamofire使用的經驗。本文 這裡不討論JSONModel和Alamofire這兩個項目,直接上代碼,BaseModel.h#import "JSONModel.h"@interface BaseModel :