Adicionando a pequena seta ao lado direito de uma célula em uma célula do iPhone TableView


Respostas:


317

Basta definir o respectivo accessoryType propriedade de UITableViewCell .

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

No Swift 3 ,

cell.accessoryType = .disclosureIndicator

1
Observe que se você quiser girar a seta ... não poderá fazê-lo . Você precisa usar uma imagem .. stackoverflow.com/questions/13836606/…
— Fattie 29/11/13

1
Para Swift, use cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
— Quintin Balsdon

1
cell.accessoryType = .DisclosureIndicatortrabalha em Swift também.
— Tim Vermeulen

SWIFT 3.0: cell.accessoryType = .disclosureIndicator
— Brian

67

Você pode fazer isso no Interface Builder. Simplesmente clique na Visualização da tabela , vá para Células protótipo no lado direito e selecione 1. Depois clique na Célula protótipo e, à direita, procure Acessório . No menu suspenso, clique em Indicador de divulgação .

Exemplo do Interface Builder


Não consigo ver nada como "Células protótipo" no meu xCode ... Está disponível em algumas versões do xCode?
— Rasto

Também não consigo encontrar "Células protótipo". Eu usei cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; na célula personalizada.
— quer

1
hey @rzv, você pode ampliar a imagem um pouco mais? eu esqueci meus óculos
— abbood

6

Você pode definir uma flecha clássica pequena como nos dois sentidos, como abaixo

1) Usando o método de tipo de acessório embutido de UITableViewCell

[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator]; 

2) Criando a própria visualização acessória com a própria imagem

(I) Arraste e solte uma imagem de seta (por exemplo, circle_arrow_right.png) em seu projeto

(II) No método de design de célula para cada linha, como abaixo

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

Escreva o código abaixo:

if (cell ==nil) {
    cell=[[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:CellIdentifier]autorelease];

    //For creating custom accessory view with own image
    UIImageView *accessoryView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
    [accessoryView setImage:[UIImage imageNamed:@"circle_arrow_right.png"]];
    [cell setAccessoryView:accessoryView];
    [accessoryView release];

    //Your other components on cells
     .............
    .............

 }

[ Nota: Escolha as imagens apropriadas para a visualização acessória e adicione as células desejadas. Escolha imagens pequenas para exibições acessórias para obter melhor desempenho.]



3

para seta simples:

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

e para seta detalhada:

cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator;)
— G.


2

A outra maneira de fazer isso é especificar UITableViewCellAccessoryDisclosureIndicatorquando você cria a célula. Para fazer isso, você provavelmente alocará init sua célula no método delegado tableViewCellWithReuseIdentifier (em seguida, continue para personalizar e configurar sua célula).

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellAccessoryDisclosureIndicator reuseIdentifier:identifier];

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.