2016-12-04 2 views
0

Objective-Cで書かれたObjc - Lighter View Controller 1から学んだので、素早いバージョンを書いていますが、問題が見つかりました。これを説明してください。私は、関数内の変数「データソース」をdeclearTableViewまたはCollectionViewを使用するときのスウィフトスリムコントローラのコード

func setUpTableView() { 
    let items = datas 

    let configuarion: (_ cell: UITableViewCell, _ item: AnyObject) ->() = { cell,item in 
     if let str = item as? String { 
      cell.textLabel?.text = str 
     } 
    } 

    let dataSource = ArrayDataSource(aItems: items as Array<AnyObject>, aCellIdentifier: "Cell", aConfigurationBlock: configuarion) 
    tableView.dataSource = dataSource 
} 

は、それは影響を与えませんが、私はグローバル変数としてそれをdeclearとき、それは動作します。私はこれらの2つの方法の違いは何か分かりません。

答えて

0

コントローラのプロパティとしてArrayDataSourceを設定する必要があります。あなたのコードでdataSourceは関数の実行終了後に終了します

関連する問題