5
드래그 앤 드롭 제스처를 사용하여 recyclerview에서 데이터 순서를 바꾸고 싶지만 firebase 데이터베이스에서 데이터를 다시 정렬하는 방법을 모릅니다.firebase 실시간 데이터베이스에서 데이터 순서를 변경하는 방법
드래그 앤 드롭 제스처를 사용하여 recyclerview에서 데이터 순서를 바꾸고 싶지만 firebase 데이터베이스에서 데이터를 다시 정렬하는 방법을 모릅니다.firebase 실시간 데이터베이스에서 데이터 순서를 변경하는 방법
파이어베이스는 가시적 인 인덱스를 기반으로 주문한 것이 아니라 데이터베이스 when queried의 항목을 기준으로 주문할 수 있도록 설계되었습니다.
orderByChild
, orderByKey
, 또는 그래서 당신은, 당신은 각 항목에게 '인덱스'값을주고 코드의 orderByValue('index')
몇 줄을 호출해야 중포 기지의 값의 순서를 변경하려면 orderByValue
이 색인을 사용하려면 현재 데이터베이스 항목을 업그레이드 할 수 있습니다.
int index = 0;
mDatabase.child("data").addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String previousChildName) {
Log.d(TAG, "onChildAdded:" + dataSnapshot.getKey());
// A new comment has been added, add it to the displayed list
Data data = dataSnapshot.getValue(Data.class);
index++;
Map<String, Object> childUpdates = new HashMap<>();
childUpdates.put("/data/" + dataSnapshot.getKey()+"/index", index);
mDatabase.updateChildren(childUpdates);
}
확인. 어떻게하면 데이터베이스의 각 요소를 반복하여 인덱스로 값을 변경할 수 있습니까? – Smeekheff
데이터베이스 항목을 다른 필드를 포함하도록 '업데이트'할 수 있습니다. –
사실이지만 각 요소를 반복하여 어떻게 코드를 제공 할 수 있습니까? – Smeekheff