Значение java.util.Date изменяется после получения от конструктора в Android - PullRequest
0 голосов
/ 11 октября 2018

Я передаю java.util.Date значение во фрагмент через аргументы

Из конструктора фрагмента я получаю правильное значение, которое я передал из предыдущего класса

, но в onCreateView java.Значение util.Date становится текущим значением

вот мой код

Date mydate;
 public GraphDashboardDatedFragment(Date selectedDate) {

    this.mydate=selectedDate;
    Log.v("DateBeforePassing",selectedDate.toString());

}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    view= inflater.inflate(R.layout.fragment_date_dashboard_graph, container, false);
    Log.v("DateAfterPassing",mydate.toString());


    return view;
}

, а вот мой файл журнала

10-12 01:06:15.220 24456-24456/? V/DateBeforePassing: Sat Oct 13 10:45:00 GMT+05:30 2018
10-12 01:06:15.240 24456-24456/? V/DateAfterPassing: Fri Oct 12 01:06:05 GMT+05:30 2018

DateAfterPassing всегда показывает текущее системное время

1 Ответ

0 голосов
/ 11 октября 2018

Не создавать конструктор с параметрами для фрагмента.Вместо этого используйте setArguments() после создания экземпляра фрагмента.Еще лучшее решение - использовать статический метод, такой как newInstance().Оба пути описаны в основных ответах на этот вопрос: Как передать переменную из Activity в Fragment и передать ее обратно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...