㈠ 求助ios的編程題目(swift)
#include <bits/stdc++.h>
using namespace std;
struct stu
{
char name[10];
int val;
}a[6];
int main()
{
for(int i=1;i<=5;i++) scanf("%d %s",&a[i].val,a[i].name);
for(int i=1;i<=5;i++) printf("%s %d ",a[i].name,a[i].val);
return 0;
}
㈡ swift這門編程語言會不會超越oc成為ios的主流開發語言為什麼
以蘋果的態度來看,應該是主推swift,但是這只要也得要一兩年的時間才能完全代替oc。所以說現在也不用急著學 swift,也不要抱著oc能一直作為主力開發語言的心態。
㈢ 如何在 Swift 中使用 Alamofire 進行網路編程
Alamofire是AFNetworking的作者編寫的在Swift中使用的網路類庫,使用起來邏輯清晰明了,也很容易上手.
當然AFNetworking在Swift中依然是可以使用的,不過我不推薦那麼做.
安裝Alamofire
可以通過Cocoapods的方式進行安裝,podfile配置如下:
platform :ios, '8.0'
use_frameworks!
target '你的工程名稱' do
pod 'Alamofire', '~> 3.3.0'
end
然後到終端執行pod install就可以了,使用之前先import一下import Alamofire
基本使用,請求數據
普通數據請求
//我把請求放在了button的點擊事件裡面
@IBAction func onBtnClick(sender: UIButton) {
//這里我使用一個查詢手機號碼歸屬地的介面為例,
Alamofire.request(.GET,, requestURL,parameters: ["phone":phoneNumber],encoding: .URL,headers: ["apix-key":apiKey]).responseJSON { (response) in
//是否請求成功
// if response.result.isSuccess{}
if let jsonValue = response.result.value {
print(jsonValue)
}
}
}
Alamofire.request(Method, URLString, parameters, encoding, headers)
//這是一個完整的Alamofire.Request的初始化方法,其中:
//Method,請求方式,如:.GET .POST .DELETE等
//URLString,請求介面
//parameters,請求參數,字典類型,如果是GET方法請求數據,傳入的參數將會被轉換為key1=value1&key2=value2的形式
//encoding,編碼方式,Alamofire提供一個枚舉來表示請求所用編碼,如.URL,.JSON,那麼GET方式請求數據一般使用.URL編碼方式
//headers,請求頭,對應於在NSURLRequest中的屬性allHTTPHeaderFields
這里是一個普通的GET請求,傳入的參數Alamofire自動以key=value&kay2=value2的形式拼接,如果請求是POST或者需要把請求參數已JSON的形=形式傳輸的話,encoding參數傳入.JSON即可
responseJSON閉包中我們得到的參數是一個結構體,裡面分別包含了此次請求的request對象,返回數據,請求結果等.
響應結果控制
Alamofire.request()返回的是一個Request對象,Request對象的參數都是本次請求中附帶的參數,responseJSON是對返回結果的控制,針對返回結果為JSON數據的情況,Alamofire中還提供了處理其他返回結果地方法:
response()
responseData()//二進制數據
responseString(encoding: NSStringEncoding)//字元串結果
responseJSON(options:NSJSONReadingOptions)//JSON數據
responsePropertyList(options: NSPropertyListReadOptions)//屬性列表
///響應方式應該試伺服器返回結果而定,如果伺服器給你的是JSON數據那麼就用responseJSON,如果是其他數據那麼也使用對應的
使用validate()驗證是否請求成功
Alamofire.request(.GET, requestURL,parameters:["phone":phoneNumber],encoding: .URL,headers: ["apix-key":apiKey]).validate().responseJSON { (response) in
//是否請求成功
switch response.result{
case .Success:
print("數據請求成功")
case .Failure(let error):
print(error)
}
}
validate()將確認響應的狀態編碼控制在可接受的范圍200-299內,如果驗證失敗,那麼在響應的處理方法內部將會出現一個錯誤.
上傳數據
一個簡單地上傳文件的小栗子
let fileURL = NSBundle.mainBundle().URLForResource("1", withExtension: "jpg")
Alamofire.upload(.POST, uploadURL, file: fileURL!)
//這里的前面兩個參數分別是連接方式,請求介面,第三個參數就是需要上傳的文件的本地URL
當然也可以使用NSData的形式上傳:
Alamofire.upload(.POST, uploadURL, data: "upload Data".dataUsingEncoding(NSUTF8StringEncoding)!)
其他的還有使用MultipartFormData等,這里就不做介紹了.
上傳附件時監測進度
Alamofire.upload(.POST, uploadURL, data: "upload Data".dataUsingEncoding(NSUTF8StringEncoding)!).progress { (written, totalWritten, totalNeedsToWrite) in
print("written bytes \(written) totalWritten \(totalWritten) totalBytes\(totalNeedsToWrite)")
///每次上傳一部分數據就會回調此閉包.
}
同樣的,不管是上傳還是請求數據或是下載文件,我們都可以得到伺服器的響應,所以上傳也是可以使用response系列方法的:
Alamofire.upload(.POST, uploadURL, data: "upload Data test ".dataUsingEncoding(NSUTF8StringEncoding)!).progress { (written, totalWritten, totalNeedsToWrite) in
print("written bytes \(written) totalWritten \(totalWritten) totalBytes\(totalNeedsToWrite)")
}.responseJSON { (response) in
print(response)//伺服器對本次數據上傳的響應
}
有上傳就有下載,Alamofire提供Alamofire.download()方法來執行下載操作:
///本例中所下載的文件是在網上隨便找的一張圖片
Alamofire.download(.GET, "http://pic.to8to.com/attch/day_160218/20160218_.png") { (URL, response) -> NSURL in
var path = (.DocumentDirectory, .UserDomainMask, true)[0]
path += "/\(response.suggestedFilename!)"
return NSURL.fileURLWithPath(path)
}
download方法接受一個閉包,此閉包在文件下載完成後調用,我們需要在閉包中返迴文件下載完畢之後,保存此文件的資源路徑,你也可以單獨拆分一個函數,然後傳入函數名即可
如果覺得這樣比較麻煩或者沒有必要在閉包中那些代碼,我們可以使用默認的資源路徑:
///這里使用的是系統的Document路徑
let destina = Alamofire.Request.suggestedDownloadDestination(directory: .DocumentDirectory, domain: .UserDomainMask)
Alamofire.download(.GET, "http://pic.to8to.com/attch/day_160218/20160218_.png",destination: destina)
同樣的,下載文件也可以檢測下載進度
//在此實現檢測下載進度邏輯
}
如果需要實現斷點續傳來下載文件的話,實現起來也是比較簡單,首先,Alamofire提供了對應的download方法:
Alamofire.download(resumeData: NSData() , destination: destina)
第一個參數應該傳入已經下載得到的數據,就可以在已經下載數據的基礎上繼續下載,那麼我們需要做的事就只有在下載出現錯誤或者暫停的時候把已下載數據保存起來就可以了,大致的實現思路就是這樣,我這里就不作演示了.
㈣ iOS開發新手入門應該學OC還是swift
我建議你還是先學習一下OC吧。
首先,swift感覺還在發展階段,穩定性還有待提成,偶爾會發生一些莫名其妙崩潰的問題,如果為公司做項目,一旦發生這種問題,有沒有前車之鑒,可能會耽誤時間,影響進度;
其次,swift現在的更新迭代比較快,雖然剛更新的3.0,但是據說明年會出4.0,可能今年剛學會的語法,到了明年就改的面目全非,你就不認識了。
你可以主學OC,swift作為了解,在項目中也可以使用混編來熟練一下,核心模塊還是用OC寫,其餘的可以用swift試試,swift要想完全取代OC還是需要一段長時間的。
㈤ 蘋果如何用Swift開發簡單的iOS應用
蘋果公司發布了一則視頻教程,向開發者介紹如何使用 Swift 來開發應用。蘋果通過公司的官方開發者博客公布了該視頻,蘋果 Swift 團隊表示:
迄今為止 Swift 博客都主要討論關於高級編程的話題,包括 Swift 語言的設計原則等。認為,如果給首次嘗試使用 Swift 和 Xcode 的程序員提供相關內容,那對他們一定有很大的幫助。為了讓它(Swift)更「親民」只做了一則非常短的視頻來演示,在 10 分鍾之內如何從零開始開發一款 iOS 應用。
㈥ iOS如何實現網路編程
網路編程,是我們iOS程序開發者針對網路模塊進行得代碼編程,是作為一個資深開發者必備的技能,通俗的話來說:不懂網路編程,你就不好意思說你會iOS開發!
針對項目的網路編程,具體可分為請求連接、緩存、處理:
連接:我們可分為長連接和短連接,長連接我們一般不常用,用的話也是用TCP協議(具體了解socket),我們常用的框架是GCDAsynSocket,一般用在即時通訊和地圖;短連接我們最常用的是HTTP請求,我們以前用ASI,但是後來就不在更新 了,我們最近都在使用AFNetWorking(Swift是Alamofire),
還有就是一些緩存和處理,這些就要跟自己的項目有關了,例如緩存有的是自己寫的,有的是用寫入本地、SDWebImage(內部有圖片緩存機制)、NSUserDefaults、或者資料庫框架FMDB/CoreData.
師傅領進門,修行看個人,裡面的具體細節,你可以網路查,也可以聯系我!
如果您對我的回答還滿意,請採納、謝謝!
㈦ 如何用swift開發ios應用
swift開發ios應用步驟:
創建模板
app創建用戶界面之前,要先創建app的模板。一個模板就是一個類。
打開TipCalculator.swift,並把TipCalculator類從上一個項目中復制過來。
把類重命名為TipCalculatorModel,把常量total和taxPct改為變數,把subtotal變為一個computed property。
創建視圖
Navigation bar。現在添加一個Navigation bar,選擇視圖控制器接著下面步驟EditorEmbed InNavigation Controller。
Labels。從對象庫中拖動一個Labels到你的視圖控制器。
Text Field。從對象庫中拖動一個Text Field到你的視圖控制器。在屬性檢查器中,設置Keyboard Type=Decimal Pad。
Slider。從對象庫中拖動一個Slider到您的視圖控制器。
Auto Layout。 Interface Builder會自動地為你的自動布局做大量的合理自動布局的設置。
㈧ 做了兩年iOS開發,有多少必要性學習swift語言
Swift 語言有很多先進的特性,不過實話實說(雖然我自己已經為Swift貢獻了無數內容),iOS開發角度,OC的二進制發行版本要小巧很多,在Mac和Linux上開發還沒有到達C++的成熟程度和兼容性,局限性還是比較大的;建議從C/C++/OC出身的程序員可以學習Swift,但是不要輕易放棄老本行,這是根本。
㈨ swift開發的ios應用有哪些
一、什麼是Swift?
1.Swift 是一種新的編程語言,用於編寫 iOS 和 OS X 應用。
2.Swift 結合了 C 和 Objective-C 的優點並且不受 C 兼容性的限制。
3.Swift 採用安全的編程模式並添加了很多新特性,這將使編程更簡單,更靈活,也更有趣。
4.Swift 是基於成熟而且倍受喜愛的 Cocoa 和 Cocoa Touch 框架,它的降臨將重新定義軟體開發。
5.Swift 是編寫 iOS 和 OS X 應用的極佳手段,並將伴隨著新的特性和功能持續演進。
我們對 Swift 充滿信心,你還在等什麼!
二、開發環境的要求
硬體:
1.蘋果電腦, 必須是基於Intel的Macintosh計算機。
2.iPhone或iPod Touch,主要用來測試編寫好的程序。(當然如果沒有此條件,可以使用xcode模擬器運行)
軟體:
1.蘋果系統MacOS。
2.Xcode開發工具。(可以從蘋果電腦的AppStore下載,或登錄蘋果開發者中心下載)
這里提供Xcode6-beta版本的下載地址:
http://adcdownload.apple.com//wwdc_2014/xcode_6_beta_ie8g3n/xcode_6_beta.dmg
--注意:要使用swift語言,必須使用xcode6-beta版本以上的開發工具.
三、我的第一個程序演示
1.打開xcode工具,選擇"Create a new Xcode project"創建一個新的項目
(Xcode6比這前的版本多了一項"Get started with a playground」,用來練習代碼的,後面會講到。)