Dodanie małej strzałki po prawej stronie komórki w komórce iPhone TableView

138

To powinno być dość proste.

Mam aplikację na iPhone'a z TableView. Jak dodać małą klasyczną strzałkę po prawej stronie każdej komórki?

Eric Brotto
źródło

Odpowiedzi:

317

Po prostu ustaw odpowiednią właściwość accessoryType UITableViewCell .

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

W Swift 3 ,

cell.accessoryType = .disclosureIndicator
EmptyStack
źródło
1
Zwróć uwagę, że jeśli chcesz obrócić strzałkę ... nie możesz tego zrobić . Musisz użyć obrazu .. stackoverflow.com/questions/13836606/…
Fattie.
1
W przypadku Swift po prostu użyj cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
Quintin Balsdon,
1
cell.accessoryType = .DisclosureIndicatordziała też w Swift.
Tim Vermeulen,
SWIFT 3.0: cell.accessoryType = .disclosureIndicator
Brian
67

Możesz to zrobić w programie Interface Builder. Po prostu kliknij widok tabeli , przejdź do Komórki prototypowe po prawej stronie i zrób to 1. Następnie kliknij komórkę prototypu i po prawej stronie znajdź Akcesoria . W menu rozwijanym kliknij opcję Wskaźnik ujawnienia .

Przykład programu Interface Builder

rzv
źródło
Nie widzę czegoś takiego jak „Komórki prototypowe” w moim xCode ... Czy jest dostępne w niektórych wersjach xCode?
Rasto
Nie mogę też znaleźć „Prototype Cells”. Użyłem cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; w niestandardowej komórce.
Arkady,
1
hej @rzv, czy możesz trochę powiększyć obraz? Zapomniałem okularów
abbood
6

Możesz ustawić małą klasyczną strzałkę, taką jak dwukierunkowa, jak poniżej

1) Korzystanie z wbudowanej metody typu akcesoriów UITableViewCell

[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator]; 

2) Tworzenie własnego widoku akcesoriów z własnym obrazem

(I) Przeciągnij i upuść obraz strzałki (np. Circle_arrow_right.png) w swoim projekcie

(II) W metodzie projektowania komórek dla każdego rzędu, jak poniżej

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

Wpisz poniższy kod:

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
     .............
    .............

 }

[ Uwaga: wybierz odpowiednie obrazy do widoku akcesoriów i dodaj żądane komórki. Wybierz małe obrazy do widoków akcesoriów, aby uzyskać lepszą wydajność.]

Lalit Kumar Maurya
źródło
3

Użyj accessoryTypewłaściwości komórki, aby wyświetlić strzałkę po prawej stronie. Zobacz to .

Mridul Kashatria
źródło
3

dla prostej strzały:

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

a dla szczegółowej strzałki:

cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
Ravi_Parmar
źródło
cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator;)
MR
3

Swift 3:

cell.accessoryType = .disclosureIndicator
David Seek
źródło
2

Innym sposobem na to jest określenie, UITableViewCellAccessoryDisclosureIndicatorkiedy tworzysz komórkę. Aby to zrobić, prawdopodobnie przydzielisz init komórkę w metodzie delegata tableViewCellWithReuseIdentifier (następnie przystąpisz do dostosowywania i konfigurowania komórki).

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellAccessoryDisclosureIndicator reuseIdentifier:identifier];
Kyle Clegg
źródło
0

Najlepiej wybrać Disclosure Indicatorw Accessorysekcji.

Uditha Prasad
źródło