2015-06-26 16 views
14

pracuję nad zwyczajem UITableViewCell gdzie chcę dodać UITableView wewnątrz UITableViewCell więc jest jakiś dostępny do zrobienia tego samegododanie UITableView wewnątrz UITableViewCell

kontroler Jest to obraz tego, co chcę dodać w moim projekcie

enter image description here

To jest rozszerzalna UITableView gdzie po kliknięciu pierwszego rzędu wewnątrz tabeli i przycisków są rozwinięte.

Jeśli dostępny jest jakikolwiek podobny kontroler, proszę zasugeruj mi.

Z góry dziękuję.

+3

możliwy duplikat http: // stackoverflow.com/questions/17398058/is-it-possible-to-add-uitableview-within-a-uitableviewcell – iAnurag

+0

Mam podobny typ pytania jakiejkolwiek pomocy wysłałem https://stackoverflow.com/q/45626816/6028575 –

Odpowiedz

4

Firma Apple nie zaleca dodawania widoków tabel jako subskrybentów innych obiektów przewijanych. Jeśli chcesz rozwijać takiej rzeczy, tutaj są kroki dla Ciebie:

  1. Dodać oddzielną sekcję dla „widoku tabeli” wewnątrz widoku tabeli
  2. Pierwszy wiersz sekcji - Twój klikalny rząd
  3. Gdy użytkownik dotknie rzędu, obsłuż go za pomocą - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath.
  4. Wstaw inne komórki do tej sekcji, modyfikując tablicę źródeł danych.
  5. sekcja Odśwież czy aktualizację,

    jak

    [self.dataSourceArray insertObject:object atIndex:indexPath.row]; 
    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0]; 
    [self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic]; 
    
+0

Jak to jest Apple nie zaleca się tego robić, jeśli lista WiFi w Ustawieniach każdego urządzenia z systemem iOS jest wykonana w ten sposób? – Josh

+0

@Josh, jeden z powodów - ciężko pracować z autolayoutem i obliczać prawidłowe wymiary dla zagnieżdżonych obiektów przewijanych. jest prosty sposób na zrobienie tego bez zagnieżdżania się. a także - czy w ustawieniach widziałeś zagnieżdżoną hierarchię widoków uiscrollview? to prosta aktualizacja widoków tabeli (jak wstawianie/usuwanie). – Doro

+0

Witam @Doro, kiedy wchodzisz w Ustawienia> Wi-Fi, na twoim iPhonie możesz zobaczyć pierwszą sekcję (z przełącznikiem on/off Wi-Fi i aktywną siecią Wi-Fi) i ... drugą sekcję z listą hotspotów Wi-Fi, które dynamicznie rosną lub kurczą się. Chcę zaimplementować dokładnie to samo, ale z czymś innym zamiast sieciami Wi-Fi. Mam tylko umiarkowaną płynność z szybkim/ios, czy wiesz, czy patrzę na ten problem z prawej strony? – Josh

4

będę odradzam lęgowych widokiem tabeli. Jako użytkownik frustruje to, że jedna przewijana istota znajduje się w innej przewijanej jednostce. Podczas przesuwania nigdy nie masz pewności, jak zachowa się zawartość. Może to zająć kilka przesunięć, aby przejść od jednego końca rodzica do drugiego. Ma znaczenie, jak się miewasz. Po prostu jest do bani.

Spróbuj podejście rozszerza widoku tabeli na sekcje Expand/collapse section in UITableView in iOS

Powodzenia!

1

-> Zrób osobną sekcję dla UITableView chcesz dodać widok podobny jak Tableview.

-> Weź pierwszy rząd tej sekcji.

-> Zastąp metodę delegata UITableView. - (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath;

-> W tej metodzie zaktualizuj dane widoku tableview i ponownie załaduj tę sekcję.

[self.dataSourceArray removeObjectAtIndex:indexPath.section]; 
    [self.dataSourceArray insertObject:object atIndex:indexPath.section]; 
    [tableView reloadSections:[NSIndexSet indexSetWithIndex:indexPath.section] withRowAnimation:UITableViewRowAnimationAutomatic]; 
Powiązane problemy