UITableViewCell анимация при прокрутке - PullRequest
2 голосов
/ 28 августа 2011

У меня есть UITableView с пользовательскими UITableViewCells в нем. Эти клетки можно открывать и закрывать анимацией. Когда пользователь прокручивает, я хотел бы закрыть ячейку. Я делаю это, публикуя уведомление вроде этого:

[[NSNotificationCenter defaultCenter] postNotificationName:@"closeSwipedCell" object:nil];

Это вызовет метод, который выполняет мою простую анимацию в моем подклассе UITableViewCell. Это работает нормально, но анимация не произойдет, пока пользователь не перестанет снова прокручивать UITableView. Возможно ли сделать эту анимацию при прокрутке табличного представления?

Ответы [ 3 ]

2 голосов
/ 28 августа 2011

Вот отличное подробное объяснение того, как выполнить прокрутку в подменю ячейки, например в приложении Twitter для iphone.Я думаю, что это очень похоже на то, что вы ищете.Он не использует уведомления для закрытия ячейки, он использует события из UIScrollViewDelegate, как рекомендовали другие комментаторы.

iDevRecipes ищите пост на idevrecipes.com под названием «Какприложение Twitter для iPhone реализует боковые удары по столу ".

Там есть хорошее описание, но также и код для загрузки.

0 голосов
/ 28 августа 2011

scrollViewDidScroll: можно вызывать только в конце пользовательской прокрутки. Вы можете попытаться запустить свое уведомление, используя метод делегата scrollViewWillBeginDragging:, который обязательно будет вызван в начале действия прокрутки.

Есть также несколько UIViewAnimationOptions констант (IIRC, о которых я думаю UIViewAnimationOptionBeginFromCurrentState), которые влияют на то, начнется ли анимация во время другого анимационного действия, такого как прокрутка (отслеживание).

Вам потребуется OR этой опции с вашими существующими параметрами анимации в параметре options: вашего вызова метода анимации.

0 голосов
/ 28 августа 2011

Вы сможете прослушать метод UIScrollViewDelegate scrollViewDidScroll: и запустить событие.

Ознакомьтесь с документами Apple на UIScrollViewDelegate .

РЕДАКТИРОВАТЬ: если я неясно, UITableViewDelegate соответствует UISCrollViewDelegate.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...