Pergunta

Eu sou muito cedo no processo de aprendizagem de desenvolvimento do iPhone. Eu estou tentando obter minha cabeça em torno de várias peças. Agora Acabei de tomar o modelo básico NavigationController e eu estou tentando criar um simples agrupados exibição de tabela com um par de campos de texto. O que eu não consigo fazer é obter Interface Builder para permitir-me para soltar um UITableViewCell em um UITableView para que eu possa, em seguida, adicionar um campo de texto para o celular. É isto mesmo possível (parece que o seu suposto ser dado o fato de que UITableViewCell é um controle draggable)?

Se não, que isso tudo significa de que é código que precisará apenas me escrever?

Foi útil?

Solução

Você pode criar a célula com Interface Builder, mas você tem que torná-lo um objeto de nível superior, em vez de uma criança da exibição de tabela. Em seguida, você pode retornar esta célula em tableView do seu controlador de exibição: cellForRowAtIndexPath:. Função

Certifique-se de dar a célula um identificador no Interface Builder e, em seguida, usar o mesmo identificador com dequeueReusableCellWithIdentifier: (veja o código de exemplo de como isso funciona - a idéia é que as células se re-utilizado -.. o oS só vai alocar tantas células como se encaixam na tela ao mesmo tempo inteligente maneira de poupar memória)

Outras dicas

Tenha cuidado com o método de arranque para a Diretoria. Você vai vazar se você não lidar adequadamente com o seu IBOutlets. Vou tentar explicar isso para o melhor da minha capacidade, sem código de postagem (NDA). Se você planeja usar o IB para criar o seu celular, fazer a UITableViewCell é lima Xib própria. Defina o dono do arquivo como sua subclasse UIViewController (ou UITableController). Chame o IBOutlet algo como UITableViewCell *cellFactory. No UITableViewDataSource método tableView:cellForRowAtIndexPath: faça o seguinte pseudo-código;

  1. Tente desenfileirar uma célula utilizando o identificador você configurar em IB
  2. Se for bem sucedido, o seu feito. Basta usar a célula
  3. Else você precisa criar uma nova célula. Use o método [NSBundle mainBundle] loadNibNamed:owner:options: com o seu arquivo xib adequada lá. Isto irá preencher o ivar cellFactory com uma célula fresco. Aqui vem a parte complicada.
  4. set cell = cellFactory solte cellFactory e defini-lo a zero para ter certeza de que você não acidentalmente usá-lo novamente. Agora você está seguro de usar seu celular como normal

Infelizmente, isso realmente não funciona dessa maneira - as células do tableview são gerados pelo delegado em tempo de execução. Acontece que para ser um código muito simples, no entanto. Confira o código de exemplo tableview, é muito fácil de seguir.

Este é um bom tutorial sobre como usar o UI builder para de UITableView

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