1秒間に同じ処理を繰り返すプログラムを組もうとしてますが、うまくいきません。
下記に一部除きますが、繰り返し処理を行う部分を掲載します。
どのように修正すればうまくいくでしょうか。
swift
1import UIKit 2 3class ViewController: UIViewController,NSURLSessionDelegate,NSURLSessionDataDelegate{ 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8 9 // 通信用のConfigを生成. 10 let myConfig:NSURLSessionConfiguration = NSURLSessionConfiguration.backgroundSessionConfigurationWithIdentifier("backgroundTask") 11 // Sessionを生成. 12 var mySession:NSURLSession = NSURLSession(configuration: myConfig, delegate: self, delegateQueue: nil) 13 // 通信先のURLを生成. 14 let myUrl:NSURL = NSURL(string: "データを送る先のURL")! 15 16 // POST用のリクエストを生成. 17 let myRequest:NSMutableURLRequest = NSMutableURLRequest(URL: myUrl) 18 // POSTのメソッドを指定. 19 myRequest.HTTPMethod = "POST" 20 21 // 送信するデータを生成・リクエストにセット. 22 let str:NSString = "送るデータを書く" 23 let myData:NSData = str.dataUsingEncoding(NSUTF8StringEncoding)! 24 myRequest.HTTPBody = myData 25 26 // タスクの生成. 27 let myTask:NSURLSessionDataTask = mySession.dataTaskWithRequest(myRequest) 28 29 // タスクの実行. 30 myTask.resume() 31 32 let time:NSTimer = NSTimer.scheduledTimerWithTimeInterval(1,target:self,selector:Selector("onUpdate"),userInfo: nil, repeats: true) 33 34 func onUpdate() { 35 36 ここの処理がわかりません。 37 } 38 } 39 40 //通信が終了したときに呼び出されるデリゲート. 41 func URLSession(session: NSURLSession, dataTask: NSURLSessionDataTask, didReceiveData data: NSData) { 42 43 // 帰ってきたデータを文字列に変換. 44 var myData:NSString = NSString(data: data, encoding: NSUTF8StringEncoding)! 45 46 // バックグラウンドだとUIの処理が出来ないので、メインスレッドでUIの処理を行わせる. 47 dispatch_async(dispatch_get_main_queue(), { 48 self.myText.text = myData as String 49 }) 50 } 51 52 @IBOutlet weak var myText: UILabel! 53 func URLSessionDidFinishEventsForBackgroundURLSession(session: NSURLSession) { 54 println("URLSessionDidFinishEventsForBackgroundURLSession") 55 } 56 57 override func didReceiveMemoryWarning() { 58 super.didReceiveMemoryWarning() 59 // Dispose of any resources that can be recreated. 60 } 61 62 63} 64 65 66
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/08/10 02:10
2015/08/10 02:12