У меня есть ReyclerView
, работающий с LinearLayoutManager
и Adapter<ViewHolder>
. У меня есть список элементов, которые я хотел бы отображать в recyclerview с анимацией вставки (слайд). Как мне это сделать?RecyclerView: как создать эффект анимации вставки?
Я хотел бы отображать анимации с линейно возрастающей задержкой, основанной на индексе элемента.
В настоящее время, если я использую 2 кнопки «добавить» и «удалить», а затем сделать соответствующие операции на recyclerview (notifyItemInserted()
и notifyItemRemoved()
, анимации приходят в красиво.
Если программно цикл на набор данных и добавить элементы, опять же, используя notifyItemInserted()
. Я не вижу никакой анимации. Я просто вижу, что все элементы отображаются почти сразу.
Если я использую Asynctasks с линейной задержкой, а затем добавляю/удаляю элемент в OnPostExecute()
, я до сих пор не вижу анимации. Кроме того, я вижу возможность запуска в тупиковые блоки, если несколько потоков вставки ждут всех удаленных потоков (без места для удаления потоков).
Что я делаю неправильно?
Я рассмотрел большинство вопросов, связанных с этим на SO, и провел дни, собираясь вокруг анимационной части recyclerview, все равно не повезло.
Посмотрите на [этот ответ] (http://stackoverflow.com/questions/26724964/how-to-animate-recyclerview-items-when-they-appear). Автор объясняет, где добавить анимацию, когда вы используете «RecyclerView». @milindbableshwar – Marcus
Я редактирую соответствующий код для ответа, пожалуйста, посмотрите. @milindbableshwar – Marcus
Отлично! Это работает. Следующий вопрос, как удалить анимированные элементы? Я имею в виду, если бы я программно удалял список элементов, где я должен начать анимацию элемента удаления? – milindbableshwar