Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida Conteúdo Dinamico

1 - Na video aula, o Guilherme falou que devemos tomar cuidado tanto quando formos sobrescrever uma função quanto quando não sobrescritemos, como faço para saber em quais situações devo ou não sobrescrever uma função? Tenho que olhar a documentação da linguagem para cada função que vou usar?

2 - Reparei que na video aula cell.textLabel não era opcional, minha duvida é, quais são as circunstancias em que ele pode conter um valor nulo nesse caso? devo tratar isso com um if, como faço isso? pois da maneira que eu fiz abaixo o código pode gerar erro.

class ViewController: UITableViewController {

    let meals =  ["eggplant brownie" , "zucchini muffin"]

    override func viewDidLoad() {
        super.viewDidLoad()
        println("Testando tabela dinamica")
    }

    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return meals.count
    }

    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let row = indexPath.row
        let meal = meals[row]

        var cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: nil)
        cell.textLabel!.text = meal
        return cell
    }
}
2 respostas
solução!

Oi André,

Na última versão do Xcode algumas coisas que não eram opcionais passaram a ser. Se você tiver customizado o seu UITableViewCell, você pode ter a propriedade textLabel nula, por isso a checagem obrigatória.

Abraço!

Respondendo a sua pergunta 1, você sobre-escreve nos casos em que você precisar usar o método. Em alguns casos o Xcode te avisa quais métodos obrigatórios você tem que sobre-escrever, em outros é meio que intuitivo, você precisa usar ele para fazer aparecer na tabela o que você deseja. Por fim, se o Xcode nao informar nada e você não souber o que fazer, ai tem que partir para a documentação ou site como stackoverflow.

Na aula 4. Seleção , Remoção e Adição de Itens. vídeo 2, ele fala um pouco mais sobre o assunto.