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.