Android ViewModel SetValue -Funktion bleibt hängenAndroid

Forum für diejenigen, die für Android programmieren
Anonymous
 Android ViewModel SetValue -Funktion bleibt hängen

Post by Anonymous »

Um die Live -Daten für Signale zu verarbeiten, habe ich die folgenden Klassen signalsViewModel definiert. Wenn ich die Funktion updatesignals aufrufe, bleibt sie hängen und führt nicht den nächsten Befehl aus.

Code: Select all

signalsViewModel = new ViewModelProvider(this).get(SignalsViewModel.class);
< /code>
Wenn ich die Live -Daten festlegt, bleibt die App in der folgenden Funktion hängen und führt nicht den nächsten Befehl aus. < /p>
// Get Stuck here.
signalsViewModel.updateSignals(booleen);

// Doesn't run the following command
sendNextRequest();
< /code>
Hier ist die Klassendefinition von SignalsViewModel. < /p>
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.ViewModel;
import java.util.Arrays;

public class SignalsViewModel extends ViewModel {
private final MutableLiveData signals = new MutableLiveData(new boolean[4]);

/**
* Returns a LiveData that observers can watch.
*/
public LiveData getSignals() {
return signals;
}

/**
* Updates the signals. Observer only notified if values actually changed.
*/
public void updateSignals(boolean[] newSignals) {
if (newSignals == null || newSignals.length != 4) {
throw new IllegalArgumentException("Signals array must have exactly 4 elements.");
}

boolean[] oldSignals = signals.getValue();
if (!Arrays.equals(oldSignals, newSignals)) {
// Make a copy to prevent external modification
signals.setValue(Arrays.copyOf(newSignals, newSignals.length));
}
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post