Quero adicionar um cabeçalho de tabela (não cabeçalhos de seção), como no aplicativo de contatos, por exemplo:
exatamente assim - um rótulo ao lado de uma imagem acima da tabela.
Quero que a exibição em todos seja rolável, para que não seja possível colocá-las fora da mesa.
Como eu posso fazer isso?
iphone
ios
uitableview
Assaf b
fonte
fonte
public override UIView GetViewForHeader(UITableView tableView, nint section) { return headerView; } public override nfloat GetHeightForHeader(UITableView tableView, nint section) { return headerView.Frame.Height; }
Você pode fazer isso com bastante facilidade no Interface Builder. Basta criar uma vista com uma tabela e soltar outra vista na mesa. Isso se tornará a visualização do cabeçalho da tabela. Adicione seus rótulos e imagem a essa exibição. Veja a foto abaixo para a hierarquia de visualizações.
fonte
Em Swift :
fonte
Você também pode simplesmente criar SOMENTE um UIView no construtor Interface e arrastar e soltar o ImageView e o UILabel (para torná-lo parecido com o cabeçalho desejado) e usá-lo.
Quando o seu UIView também se parecer com o desejado, você pode inicializá-lo programaticamente a partir do XIB e adicionar ao seu UITableView. Em outras palavras, você não precisa criar a tabela INTEIRO no IB. Apenas o headerView (dessa forma, a visualização do cabeçalho também pode ser reutilizada em outras tabelas)
Por exemplo, eu tenho um UIView personalizado para um dos meus cabeçalhos de tabela. A visualização é gerenciada por um arquivo xib chamado "CustomHeaderView" e é carregada no cabeçalho da tabela usando o seguinte código na minha subclasse UITableViewController:
fonte
fonte