Junior — Middle
Ինչպե՞ս եք իրականացնում դելեգատը ձեր նախագծում աղյուսակը կառավարելու համար։
sobes.tech AI
Պատասխան AI-ից
iOS-ում սեղակագծի (UITableView) կառավարումը սովորաբար իրականացվում է այնպիսի դասով, որը իրականացնում է UITableViewDelegate և UITableViewDataSource պրոտոկոլները: Դելեգատը պատասխանատու է սեղակագծի հետ փոխազդեցության իրադարձությունների մշակման համար, իսկ տվյալների աղբյուրը (data source)՝ տվյալների տրամադրման համար:
Դելեգատի և տվյալների աղբյուրի իրականացման օրինակ:
class MyTableViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
let data = ["Խնձոր", "Բանան", "Նարինջ"]
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return data.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
cell.textLabel?.text = data[indexPath.row]
return cell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print("Ընտրված տարր: \(data[indexPath.row])")
}
}
Ծրագրում սովորաբար ստեղծվում է առանձին դաս կամ ընդարձակում դելեգատի համար, որպեսզի ցուցադրման և իրադարձությունների մշակման տրամաբանությունը առանձնացվի վերահսկիչից: