10分でTableviewを作ってみた。

##やること
Tableviewを作る

##セルに表示させるアイテムを定義する
```
 let items = ["リンゴ","バナナ","オレンジ"]
```

##Tableviewを作る
①Tableviewを作るコードを記入

```

    let tableView: UITableView = {
        let tv = UITableView()
        return tv
    }()
```

②``override func viewDidLoad``の中にtableviewを表示させるコードを記入

```
view.addSubview(tableView)
```
③tableviewのサイズを指定

```
tableView.frame.size = view.frame.size
```

##シミュレーター
<img width="325" alt="スクリーンショット 2020-07-28 20.52.14.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/627010/0974d001-fb47-0755-bf38-cc6b1f705393.png">

##tableviewのデリゲートのメソットの設定
①``override func viewDidLoad``の中にデリゲートのメソットを使えるようにするコードを記入

```
tableView.delegate = self
tableView.dataSource = self
```
これでデリゲートのメソットが使えるようになりました。

②classの一番上のところに`private let cellId = "cellId"`と記入

③一番下にデリゲート使うにあたって必ず必要なメソッドを記入

```
extension ViewController: UITableViewDelegate,UITableViewDataSource{
 //セルを何個表示すさせるかのコード
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return self.items.count   
            }

//セルに何を表示させるかのコード
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let  cell = tableView.dequeueReusableCell(withIdentifier: cellId, for: indexPath)
cell.textLabel?.text = self.items[indexPath.row]  
    return cell
}
}
```
④``override func viewDidLoad``の中にTableViewに上記のメソッドを反映させるコードを記入

```
tableView.register(UITableViewCell.self, forCellReuseIdentifier: cellId)
```

##タイトルをつける
①Main.storyboardに移動してViewControllerを選択し、``Editor``→``Embedld``→``NavigationController``を選択してNavigationControllerを設置する。
<img width="730" alt="スクリーンショット 2020-07-28 21.42.32.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/627010/ef20c3dc-fde0-43ef-c405-8ab5b0f7037b.png">


②ViewController.swiftに戻って``override func viewDidLoad``の中にタイトルを表示させるコードを入力する

```
navigationItem.title = "果物"
```
##シミュレーター
<img width="318" alt="スクリーンショット 2020-08-09 22.10.02.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/627010/910bd33b-6ee6-4cc8-d678-9da44991f55a.png">

##全体のコード
```
class ViewController: UIViewController {
    
      let items = ["リンゴ","バナナ","オレンジ"]
    
       private let cellId = "cellId"
    
//tableviewを作っていく
    let tableView: UITableView = {
        let tv = UITableView()
        return tv
    }()

    override func viewDidLoad() {
        super.viewDidLoad()

        view.addSubview(tableView)
        tableView.frame.size = view.frame.size

        tableView.delegate = self
        tableView.dataSource = self
        tableView.register(UITableViewCell.self, forCellReuseIdentifier: cellId)
        navigationItem.title = "果物"

     
    }
}

extension ViewController: UITableViewDelegate,UITableViewDataSource{


        func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

            return self.items.count
            }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: cellId, for: indexPath)
        
         cell.textLabel?.text = self.items[indexPath.row]

         return cell


    }
    

}

```


今回はほとんどコードでtableviewを表示させてみました！