Установите загруженные данные JSON в класс View Model, чтобы сохранить их через фрагменты действия - PullRequest
0 голосов
/ 27 апреля 2019

Я ищу способ присвоения значения моему классу viewModel таким образом, чтобы оно сохранялось во всех фрагментах действия. Присвоение значения как mViewModel = serializedPOJO; не работает, и единственный известный мне способ - вызывать mViewModel.setFieldValue(serializedPOJO.getFieldValue()); для каждого поля в классе, и я считаю, что должен быть более простой способ, чем этот.

Вот мой код:


POJOViewModel.class

public class POJOViewModel extends ViewModel {
    private String id;
    private String clientName;
    private String date;

    public POJOViewModel() {
    }

    public String getClientName() {
        return clientName;
    }

    public void setClientName(String clientName) {
        this.clientName = clientName;
    }
    //And similar getter setters
    ...
}

Activity.java

public class Activity extends AppCompatActivity {
    private POJOViewModel mViewModel, serializedJSON;

    @Override
    protected void onCreate(final Bundle savedInstanceState) {
        mViewModel = ViewModelProviders.of(this).get(POJOViewModel.class);
        ActivityArgs args = ActivityArgs.fromBundle(getIntent().getExtras()); //Contains data sent from previous activity
        mViewModel = args.getFormData(); //Assignment. However, mViewModel holds data, it doesn't persist when accessed from another fragment.
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...