diff --git a/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java b/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java index 535dc49..d75ba68 100644 --- a/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java +++ b/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceFragment.java @@ -32,11 +32,20 @@ public class BinanceFragment extends Fragment { RecyclerView recyclerView = binding.recyclerView; recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); - adapter = new WorkerCardAdapter(new ArrayList<>()); - recyclerView.setAdapter(adapter); - binanceViewModel.getWorkerData().observe(getViewLifecycleOwner(), adapter::updateData); + //adapter = new WorkerCardAdapter(new ArrayList<>()); + //adapter = new WorkerCardAdapter(binanceViewModel.getWorkerData().getValue() != null ? binanceViewModel.getWorkerData().getValue() : new ArrayList<>()); + //recyclerView.setAdapter(adapter); + //binanceViewModel.getWorkerData().observe(getViewLifecycleOwner(), adapter::updateData); + binanceViewModel.getWorkerData().observe(getViewLifecycleOwner(), newData -> { + if (adapter == null) { + adapter = new WorkerCardAdapter(newData); + recyclerView.setAdapter(adapter); + } else { + adapter.updateData(newData); + } + }); return root; } diff --git a/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceViewModel.java b/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceViewModel.java index c0383d5..b597d0b 100644 --- a/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceViewModel.java +++ b/app/src/main/java/com/example/dcav2gui/ui/exchanges/BinanceViewModel.java @@ -24,14 +24,19 @@ public class BinanceViewModel extends AndroidViewModel { } public LiveData> getWorkerData() { + //Iterate through workerDataList + if (workerDataList.getValue() == null) { + fetchWorkerData(); + } + //System.err.println(workerDataList.getValue().get(0).toString()); return workerDataList; } private void fetchWorkerData() { // Simulate fetching data from a source - List data = new ArrayList<>(); + //List data = new ArrayList<>(); // Add WorkerData objects to the list - workerDataList.postValue(data); + //workerDataList.setValue(data); // Schedule a periodic update new Thread(() -> { @@ -51,5 +56,4 @@ public class BinanceViewModel extends AndroidViewModel { }).start(); } - } \ No newline at end of file diff --git a/app/src/main/java/com/example/dcav2gui/ui/exchanges/adapters/WorkerCardAdapter.java b/app/src/main/java/com/example/dcav2gui/ui/exchanges/adapters/WorkerCardAdapter.java index a5ad77d..eb75a82 100644 --- a/app/src/main/java/com/example/dcav2gui/ui/exchanges/adapters/WorkerCardAdapter.java +++ b/app/src/main/java/com/example/dcav2gui/ui/exchanges/adapters/WorkerCardAdapter.java @@ -61,7 +61,6 @@ public class WorkerCardAdapter extends RecyclerView.Adapter