2016-12-20 4 views
0

So habe ich viel gesucht und konnte keine passende Antwort auf meine Frage finden, d. H. Betrachten Sie eine Tabellenansicht, die zusammenklappbare Abschnitt Header haben muss. Wenn die TableView angezeigt wird, sind die Abschnittsüberschriften alle ausgeblendet. Wenn auf einen der Abschnittsüberschriften geklickt wird, wird die Formzelle erweitert, die eine benutzerdefinierte Ansicht ist und Textfelder, Schaltflächen, Beschriftungen, Schalter usw. enthält. Wenn ein anderer Abschnittskopf angetippt wird, wird der erste Abschnittskopf geöffnet und der aktuelle Abschnittskopf geöffnet hat eine andere benutzerdefinierte Ansicht mit verschiedenen Textfeldern, Schaltflächen, Aktivitätsindikatoren usw. Alle müssen in einer Tabellenansicht sein, damit der Bereich zum Minimieren/Erweitern derselbe ist und dem Benutzer hilft, leicht zu interagieren.Zusammenklappbare Abschnitte und mehrere benutzerdefinierte UITableViewCell für jeden Abschnitt

Bitte lassen Sie mich auch wissen, ob meine Vorgehensweise auch in Ordnung ist. Ich würde gerne wissen, ob ähnliche Section Header separate Cells haben, die verschiedene Views als Subviews haben, die die erforderliche Funktionalität unterstützen.

Bitte helfen. Ich möchte folgendes erstellen:

enter image description here

Antwort

0

Setzen Sie ein UIButton auf der Kopfzelle und eine Aktion es wie folgt geben:

In viewForHeader Methode:

btn.tag = indexPath.row; 
[tapBtn addTarget:self action:@selector(openHeader:) forControlEvents:UIControlEventTouchUpInside]; 

Dann

- (void)openHeader:(UIButton *)btn { 
    if (selectedSection == btn.tag) { // selectedSection be an Int value globally declared, initialised as -1 
     selectedSection = -1; 
    } 
    else { 
     selectedSection = btn.tag; 
    } 
    [tableView reloadData]; 
} 

In numberofRows: zu

if (section == selectedSection) { 
    return count; 
} 
else { 
    return 0; 
} 

Das ist für mich gearbeitet, ich hoffe, dass dies für Sie arbeitet.

+0

Vielen Dank für Ihre Antwort, und es wird mir definitiv helfen, die Abschnitte zu reduzieren, aber das beantwortet meine Frage nicht. Ich habe es aktualisiert. Lesen Sie bitte –

Verwandte Themen