UITableView
UITableView
é uma classe do UIKit em iOS que permite exibir dados em uma lista ou tabela. É uma das classes mais comuns e versáteis usadas para criar interfaces de usuário em aplicativos iOS. A UITableView
é frequentemente utilizada para exibir listas de itens, como contatos, músicas, e-mails, entre outros.
Aqui estão os passos para criar e trabalhar com uma UITableView
em um aplicativo iOS:
Criando uma TableView no Interface Builder (Storyboard):
- Abra o Xcode e crie um novo projeto ou abra um projeto existente.
- Abra o Main.storyboard ou o arquivo onde você deseja adicionar a TableView.
- Arraste e solte uma TableView do Object Library para a tela no storyboard.
- Crie um novo arquivo Swift para o controlador da TableView e associe a classe ao ViewController na Interface Builder.
Criando uma TableView Programaticamente em Swift:
import UIKit
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
let dados = ["Item 1", "Item 2", "Item 3"] // Dados para a TableView
override func viewDidLoad() {
super.viewDidLoad()
// Criando uma TableView programaticamente
let minhaTableView = UITableView(frame: view.bounds, style: .plain)
minhaTableView.delegate = self
minhaTableView.dataSource = self
// Registrando um tipo de célula para reutilização (usando uma UITableViewCell padrão)
minhaTableView.register(UITableViewCell.self, forCellReuseIdentifier: "MinhaCelula")
// Adicionando a TableView à hierarquia de Views
view.addSubview(minhaTableView)
}
// Implementando os métodos do protocolo UITableViewDelegate e UITableViewDataSource
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return dados.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "MinhaCelula", for: indexPath)
cell.textLabel?.text = dados[indexPath.row]
return cell
}
}
Neste exemplo, uma UITableView
é criada programaticamente e associada ao ViewController
. Os métodos do protocolo UITableViewDelegate
e UITableViewDataSource
são implementados para fornecer dados à UITableView
.
Personalizando uma TableView:
Você pode personalizar uma UITableView
de várias maneiras, incluindo:
- Estilos de Célula: Use células padrão (
UITableViewCell
), células personalizadas ou células dinâmicas para estilos diferentes. - Personalizando Células: Personalize as células usando subclasses de
UITableViewCell
para criar layouts personalizados. - Tratando Seleções: Responda aos eventos de seleção de célula usando o método
tableView(_:didSelectRowAt:)
doUITableViewDelegate
. - Seções: Agrupe os dados em seções usando métodos como
numberOfSections(in:)
etitleForHeaderInSection:
. - Edição: Permita que os usuários editem a tabela, adicionando ou removendo células.
- Altura das Células: Personalize a altura das células usando o método
tableView(_:heightForRowAt:)
. - Índices: Adicione índices à tabela para facilitar a navegação usando métodos como
sectionIndexTitles(for:)
etableView(_:sectionForSectionIndexTitle:at:)
.