Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Override
- public boolean onItemMove(int fromPosition, int toPosition) {
- Collections.swap(tareasList, fromPosition, toPosition);
- List<String> listOfSortedTareasId = new ArrayList<>();
- for (Tareas tareas: tareasList){
- listOfSortedTareasId.add(tareas.getTareasId());
- }
- //convert the List of Longs to a JSON string
- Gson gson = new Gson();
- String jsonListOfSortedTareas = gson.toJson(listOfSortedTareasId);
- databaseReference.child("Dias").child(day).child("listOrder").setValue(jsonListOfSortedTareas);
- notifyItemMoved(fromPosition, toPosition);
- return true;
- }
- List<Tareas> mTareas = sortTareas();
- mTareasAdapter = new TareasAdapter(getActivity(), mTareas);
- Query listQuery = mTareasDatabase.child(userId).child("Dias").child(today).child("listOrder");
- listQuery.addValueEventListener(new ValueEventListener() {
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- jsonListOfSortedTareasId = dataSnapshot.getValue(String.class);
- sortTareas();
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- });
- private List<Tareas> sortTareas() {
- //check for null
- if (jsonListOfSortedTareasId != null) {
- Log.d("sortedCalled", jsonListOfSortedTareasId+"");
- //convert JSON array into a List<Long>
- Gson gson = new Gson();
- List<String> listOfSortedCustomersId = gson.fromJson(jsonListOfSortedTareasId, new TypeToken<List<String>>() {
- }.getType());
- //build sorted list
- if (listOfSortedCustomersId != null && listOfSortedCustomersId.size() > 0) {
- for (String id : listOfSortedCustomersId) {
- for (Tareas tareas : mTareasList) {
- if (tareas.getTareasId().equals(id)) {
- sortedTareas.add(tareas);
- mTareasList.remove(tareas);
- break;
- }
- }
- }
- }
- if (mTareasList.size() > 0) {
- sortedTareas.addAll(mTareasList);
- }
- return sortedTareas;
- }else {
- return mTareasList;
- }
- }
Add Comment
Please, Sign In to add comment