読者です 読者をやめる 読者になる 読者になる

Swift,Objective-Cプログラミング ~ iOS ~

Objective-C,Swift,Apple Watchなどのプログラミング

【iOS Swift入門 #242】一定間隔で処理をするNSTimer(ちょー簡単な時計サンプル)

一定間隔で同じ処理をしたいとき、NSTimerを使う。

ここではNSTimerを使って、簡単な時計を作成する。
(単に現在日時をラベルで表示するだけ)

■実装
Single View Applicationで新規プロジェクト作成し、
ViewController.swiftを下記のように編集する。

import UIKit

class ViewController: UIViewController {
    let dateLabel = UILabel()  // 日時表示ラベル

    // 日時フォーマット
    var dateFormatter: NSDateFormatter{
        let formatter = NSDateFormatter()
        formatter.dateFormat = "yyyy/MM/dd HH:mm:ss"
        return formatter
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.

        dateLabel.frame = view.bounds
        dateLabel.textAlignment = .Center
        view.addSubview(dateLabel)

        // 初回
        updateDateLabel()

        // 一定間隔で実行
        NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "updateDateLabel", userInfo: nil, repeats: true)

    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    // 日時表示ラベル更新メソッド
    func updateDateLabel(){
        let now = NSDate()
        dateLabel.text = dateFormatter.stringFromDate(now)
    }


}


■実行
下記のような画面が表示され、1秒毎に日時表示が更新される。

f:id:fjswkun:20150730002444p:plain



【参考情報】
iOSアプリ開発未経験の人向け
iOSアプリ開発をはじめたとき最初に買った書籍
【アプリ作成未経験の人向け】
Storyboardを使って画面を作成していく。
手順にしたがって操作していくと、ボタンの作成やWebViewの作成などができる。
アプリって、こんな感じで作るんだというのを体験できる。

Swiftではじめる iPhoneアプリ開発の教科書 【iOS 8&Xcode 6対応】

Swiftではじめる iPhoneアプリ開発の教科書 【iOS 8&Xcode 6対応】

・わかりやすくていい、と聞いた本
立ち読みした感じだと【アプリ作成未経験の人向け】

絶対に挫折しない iPhoneアプリ開発「超」入門【Swift & iOS8.1以降 完全対応】

絶対に挫折しない iPhoneアプリ開発「超」入門【Swift & iOS8.1以降 完全対応】

②を終えたくらいの知識の方向け
・アプリ開発独学中に2冊めに購入した書籍
プログラミング知識はなくても、若干理解するのに時間がかかる程度で、
読み進められるわかりやすさがある。

iPhoneアプリ開発塾

iPhoneアプリ開発塾

③中級者、上級者向け

詳解 Swift

詳解 Swift