1
私はUITableViewDelegate、UITableViewDataSourceを30ユニティファイルで使用し、 はすべて同じコードで、どのように再利用可能にすることができますか? UITableViewDelegateのちょうど2つのメソッドと、行の高さのようなカスタムアイテムです。UITableViewをどのように拡張できますか?
例:
import UIKit
import MMDrawerController
import SwiftyJSON
class FooViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
var texto = [String]()
@IBOutlet weak var table: UITableView!
override func viewDidLoad() {
let load = Loader(view: self.view)
table.delegate = self
table.dataSource = self
table.rowHeight = UITableViewAutomaticDimension
table.estimatedRowHeight = 44.0
let api = API()
api.get("agenda") { responseObject, error in
let value = JSON(responseObject!)
self.texto.append(value["agenda"]["textoagenda"].stringValue)
self.table!.reloadData()
load.stop(self.view)
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.texto.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cell")! as UITableViewCell
cell.textLabel?.text = self.texto[indexPath.row]
return cell
}
}
延長の意味は?コードを再利用する方法は1つの質問です。テーブルを拡張する方法は別の質問です。しかし、「どのようにそれらを再利用可能にすることができるか」は、それが何を意味するのかを謎めいています。 – Gruntcakes
データの配列を保持し、dataSourceメソッドを実装するUITableViewのdataSourceとして新しいクラスを作成できます。しかし、それはUITableViewを拡張するものとして呼ばれません。 –
そのようなテーブルのすべてのコードを1つの関数/クラスに入れてください –