Я использую библиотеку ListviewAnimation от nhaarman https://github.com/nhaarman/ListViewAnimations, которая отлично работает.Перетаскивание не работает в библиотеке ListviewAnimation nhaarman
Но я столкнулся следующие вопросы:
Основной проблемой я столкнулся в том, что я не в состоянии отладки мой код. Я напрямую копировал/вставлял четыре необходимые библиотеки в папку libs
. Размещение точки отладки внутри любого из методов списка, например onItemLongClick()
, не работает.
Вторая проблема заключается в том, что drag-drop listView не работает в моем коде. Всякий раз, когда я пытаюсь перетащить любой элемент списка, при удалении элемента списка элемент занимает ту же позицию, с которой он был перетаскивается.
Вот код, который я использовал:
listview.enableDragAndDrop();
listview.setDraggableManager(new TouchViewDraggableManager(
R.id.list_row_draganddrop_textview));
listview.setOnItemMovedListener(this);
listview.setOnItemLongClickListener(this);
@Override
public void onItemMoved(final int originalPosition, final int newPosition) {
if (mToast != null) {
mToast.cancel();
}
mToast = Toast.makeText(getApplicationContext(), "Moved"
+ swingBottomInAnimationAdapter.getItem(newPosition)
+ newPosition, Toast.LENGTH_SHORT);
mToast.show();
}
@Override
public boolean onItemLongClick(final AdapterView<?> parent,
final View view, final int position, final long id) {
if (listview != null) {
listview.startDragging(position - listview.getHeaderViewsCount());
}
return true;
}
My onItemMoved() не получает вызов даже после вызова listview.setOnItemMovedListener (this); – 2014-10-06 10:23:27
Что это такое в коде? Я имею в виду ArrayList или объект, который задает элементы одной строки или чего-то еще? –
@ HirakChhatbar mEntries - это ArrayList в этих сценариях. Но это может быть любая структура данных, которую вы передаете в ваш BaseAdapter или ArrayAdapter. – Athena