Sobes.tech
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])")
    }
}

Ծրագրում սովորաբար ստեղծվում է առանձին դաս կամ ընդարձակում դելեգատի համար, որպեսզի ցուցադրման և իրադարձությունների մշակման տրամաբանությունը առանձնացվի վերահսկիչից: