UITableView: se deplasează un rând într-o secțiune goală

voturi
4

Am o UITableViewcu niște secțiuni goale. Aș vrea utilizatorul să fie capabil să se deplaseze un rând în ele folosind standard de control modul de editare. Singurul mod în care pot face acest lucru până în prezent este de a avea un rând fals în secțiunile mele „goale“ și să încerce să - l ascund folosind tableView:heightForRowAtIndexPath:pentru a da rând manechinului o înălțime de la zero. Acest lucru pare să - l lase ca un rând de 1 pixel. Pot să ascund acest lucru , probabil , de a face un tip special de celule care este doar umplut cu [UIColor groupTableViewBackgroundColor], dar există o modalitate mai bună?

Acest lucru este în modul grupat de UITableView.

UPDATE: Se pare că se deplasează rânduri în secțiuni goale este posibilă fără trucuri, dar „sensibilitatea“ este destul de rău că aveți nevoie de trucuri pentru a face utilizabil pentru utilizatorii generale (care nu va fi suficient pacient să plutească încet rândul în jurul secțiunii goale până când lucrurile clic).

Întrebat 17/03/2009 la 17:07
sursa de către utilizator
În alte limbi...                            


3 răspunsuri

voturi
1

Am constatat că în iOS 4.3, rândul manechinului trebuie să aibă o înălțime de cel puțin 1 pixel pentru a da efectul dorit de a permite un rând să fie mutat în acea secțiune.

De asemenea, am constatat că rândul fals este necesară numai în secțiunea de prima și ultima; orice secțiuni între ele nu au această problemă.

Și se pare că în iOS 5.0, sunt necesare la toate Nu există niciun rând fictive sau trucuri speciale.

Publicat 20/12/2011 la 02:22
sursa de către utilizator

voturi
0

Am constatat că, dacă vă întoarceți de la -1.0 metoda heightForRowAtIndexPath se va elimina linia 1 pixel.

Publicat 08/01/2011 la 13:16
sursa de către utilizator

voturi
0

În timp ce gestionarea editării, puteți monitoriza dacă vizualizarea tabel este în modul de editare. Utilizați acest steag în interiorul cellForRowAtIndexPathpentru a decide daca sunt sau nu pentru a afișa rândul „blank“. În timp ce în modul „obișnuit“, rândul nu se va afișa, dar atunci când „modificați“ cellForRowAtIndexPath robinetele de utilizator ar trebui sa numit din nou și de data aceasta decide să afișeze rândul. Detaliile cu privire la modul de a face acest lucru depind de sursa de date și modul în care îl lipire pe ecran. Dacă nu primiți din nou apel, puteți injecta manual rânduri cu insertRowsAtIndexPaths/ deleteRowsAtIndexPathsși / sau de apel reloadDatapentru a forța o reîmprospătare.

Publicat 17/03/2009 la 17:24
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more