Pergunta

Estou escrevendo um aplicativo para iPhone. De acordo com o design, ele deve conter muitas visualizações de tabela agrupadas. Nessas visões, as linhas freqüentemente não são semelhantes entre si. Por exemplo, em uma tela, uma linha é o nome de uma tarefa, outra é o seu proprietário, outra é sua descrição, mas outra é a sua história (que deveria ser uma caixa em expansão) e assim por diante. Essas linhas são editadas de maneiras diferentes. Por exemplo, o nome pode ser inserido em forma livre, mas o proprietário deve ser escolhido de uma lista, que seria criada em uma visão adicional da tabela.

Eu acho que fazer tudo isso programaticamente me levaria a mal. O que eu quero é uma maneira de projetar essas telas no IB. Mas não consigo descobrir como fazer o IB tratar as células individualmente. Isso é possível?

Obrigado.

Foi útil?

Solução

No Builder de Interface, você cria células de UABLEVIEWVIELTIVE PARA CADA LINHA e depois retorna a célula personalizada apropriada em – tableView:willDisplayCell:forRowAtIndexPath:. Você também precisa retornar a altura de cada célula personalizada em – tableView:heightForRowAtIndexPath:.

No interface Builder, você cria uma célula personalizada como faria com qualquer visualização. Você dimensiona a célula e depois a preenche com subviews. É melhor se você criar uma subclasse uabableViewCells para cada célula personalizada que possui iboutlets que se conectam a cada subview. Dessa forma, você pode acessar facilmente rótulos, visualizações de imagem, controles etc.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top