27649


## viewWillAppear

[code]

    override func viewWillAppear(animated: Bool) {
    
        getData()
        myTable.reloadData()
        super.viewWillAppear(animated)
    
    }
    
[/code]

## getData()

[code]

    func getData() {
    
        Alamofire.request(.GET, "http://sample.jp/api/info")
            .responseJSON { response in
                guard let object = response.result.value else {
                    return
                }
    
                ...省略...
    
                dispatch_async(dispatch_get_main_queue()) {
                    self.myTable.reloadData()
                }
        }
    
    }
    
[/code]

今上記のように記述しているのですがAlamofireの処理の最後にreloadDataを入れて、  
viewWillAppear内で呼び出して、表示されるたびに更新しているのですが、  
この際にviewWillAppear内にもreloadDataを記述する必要性はありますでしょうか。

ご回答の程よろしくお願いいたします。


CC BY-SA 3.0
2016-07-15T04:07:12.123
27642
2016-07-15T08:12:16.240
2016-07-15T05:09:37.357
16765
16765
question
swift swift2 uitableview
reloadDataとviewWillAppear


getData()での非同期読み込みが完了してから改めてreloadしているので、viewWillApear内のreloadは意味がなく見えます。  
viewWillApear内のタイミングでは情報がダウンロードされていないでしょうからreloadしても初期表示のままだと思います。

あっても害はないと思いますが、不要だと思います。


CC BY-SA 3.0
2016-07-15T08:12:16.240
27649
2016-07-15T08:12:16.240
17014
27642
answer