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?
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?
Odpowiedzi:
Po prostu ustaw odpowiednią właściwość accessoryType UITableViewCell .
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
W Swift 3 ,
cell.accessoryType = .disclosureIndicator
cell.accessoryType = .DisclosureIndicator
działa też w Swift.
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 .
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ść.]
Użyj accessoryType
właściwości komórki, aby wyświetlić strzałkę po prawej stronie. Zobacz to .
dla prostej strzały:
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
a dla szczegółowej strzałki:
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
Swift 3:
cell.accessoryType = .disclosureIndicator
Innym sposobem na to jest określenie, UITableViewCellAccessoryDisclosureIndicator
kiedy 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];
Najlepiej wybrać Disclosure Indicator
w Accessory
sekcji.