UITableView: bewegen van een rij in een lege sectie

stemmen
4

Ik heb UITableViewmet een aantal lege secties. Ik wil graag de gebruiker in staat zijn om een rij te verplaatsen naar ze met behulp van de standaard edit mode controles. De enige manier waarop ik kan het tot nu toe doen is om een dummy rij in mijn lege secties en proberen om het te verbergen met behulp van tableView:heightForRowAtIndexPath:de dummy rij een hoogte van nul geven. Dit lijkt te laten als 1-pixelrij. Ik kan dit waarschijnlijk te verbergen door het maken van een speciaal type cel die net is gevuld met [UIColor groupTableViewBackgroundColor], maar is er een betere manier?

Dit is allemaal in de gegroepeerde modus UITableView.

UPDATE: Het lijkt erop dat bewegende rijen te zetten in de lege secties is zonder meer mogelijk trucjes, maar de gevoeligheid is al erg genoeg dat je trucs nodig om het te gebruiken voor algemene gebruikers (die niet geduldig genoeg om langzaam zweven de rij zal maken rond de lege sectie, totdat het klikt).

De vraag is gesteld op 17/03/2009 om 17:07
bron van user
In andere talen...                            


3 antwoorden

stemmen
1

Ik vond dat IOS 4.3, de dummy rij dient een hoogte van ten minste 1 pixel hebben om het gewenste gevolg heeft dat achter elkaar in die sectie te verplaatsen.

Ik vond dat de dummy rij alleen nodig is in de eerste en laatste gedeelte; alle secties in tussen hebben dit probleem niet.

En het lijkt erop dat in iOS 5.0, geen dummy rijen of speciale trucs zijn helemaal nodig.

antwoordde op 20/12/2011 om 02:22
bron van user

stemmen
0

Ik vond dat als je -1.0 terug te komen van de heightForRowAtIndexPath methode zal het 1 pixel lijn te verwijderen.

antwoordde op 08/01/2011 om 13:16
bron van user

stemmen
0

Terwijl het beheer van het bewerken, kunt u controleren of de tafel uitzicht is in Edit Mode. Gebruik die vlag binnen van cellForRowAtIndexPathhet weer te beslissen of de 'lege' rij niet te laten zien. Terwijl in 'gewone' mode, zal de rij niet te geven, maar wanneer 'edit' cellForRowAtIndexPath de gebruiker kranen moeten krijgen weer gebeld en deze keer besluiten om de rij weer te geven. De details van hoe dat te doen die afhankelijk zijn van uw gegevensbron en hoe je deze lijmen aan de display. Als u het gesprek niet meer krijgen, kunt u handmatig rijen met injecteren insertRowsAtIndexPaths/ deleteRowsAtIndexPathsen / of bel reloadDatanaar een refresh forceren.

antwoordde op 17/03/2009 om 17:24
bron van user

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