[swift]挫折しながら覚えるiOS開発その1 TableViewの作成


[まとめ] 現在開催中のKindleセール情報はこちら

これまでApple Developer Programに登録してiOS開発をやってみるも、すぐ挫折して忘れるというのを繰り返してきたのですが、いい加減この螺旋から脱出せねばと思い立ち、挫折しながらでいいのでブログにアウトプットしつつ進めていくことにしました。

先日、Swift 初心者向け もくもく会 vol.2に参加したのをきっかけに、意識が高くなっているのでがんばります。

これまで細かい部分を気にしすぎて先に進めなかったので、まずは動くものをつくるということを重視して進めていこうと思います。

今回はTableViewの作成です。

1. プロジェクトの作成

クラスメソッドさんのブログ記事を参考に、「SingleViewApplication」を作成します。

ios1

2. StoryboardにTableViewを追加

右下のメニューからTableViewを選んで、View Controller側にドラッグ&ドロップします。

ios2

3. TableViewをViewControllerに登録

Xcodeを2画面表示に切り替えて、StoryboardとViewControllerを表示します。

ios3

そしてTableViewにカーソルを合わせて、ctrlを押しながら、ViewControllerへドラッグ&ドロップ。

これでTableViewがViewControllerに登録されます。

4. ViewControllerの実装

import UIKit

# UITableViewDelegate, UITableViewDataSourceを追加
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {

    @IBOutlet weak var tableView: UITableView!

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

        # tableViewの紐付け
        tableView.delegate = self
        tableView.dataSource = self
    }

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

    # セルに表示するテキスト
    let texts = ["hello", "swift", "world"]

    # セルの行数を取得するメソッド(tableViewの実装に必須)
    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return texts.count
    }

    # セルの内容を変更するメソッド(tableViewの実装に必須)
    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell: UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Subtitle, reuseIdentifier: "Cell")

        cell.textLabel?.text = texts[indexPath.row]
        return cell
    }

}

この状態でビルドを実行するとTableViewが表示されます。

ios4

クラスメソッドさんのブログ記事のサンプルと同じですが、まずは真似ぶ=学ぶということで、TableViewをつくりました。

次回はカスタムセルをつくってみます。

参考

[まとめ] 現在開催中のKindleセール情報はこちら