Я начал работать с привязкой данных в android, и у меня возникла проблема. При попытке создать проект возникает ошибка
Обнаружены ошибки привязки данных: [databinding] {"msg": "невозможно найти метод getMediumStringFromMilli (float) в классе com.sg c .weightcontrol.util.DateUtil", "file": "B: \ projects \ weightControl \ app \ src \ main \ res \ layout \ фрагмент_объектива. xml "," pos ": [{" line0 ": 49," col0 ": 58," line1 ": 49," col1 ": 115}]}
Мой фрагмент xml (R.layout .fragment_objective)
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<import type="com.sgc.weightcontrol.util.DateUtil" />
<variable
name="objective"
type="com.sgc.weightcontrol.ui.modelUI.ObjectiveUI" />
</data>
//Container open
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{`string/start_weight` + DateUtil.getMediumStringFromMilli(objective.startTime)}" " />
//Container close
</layout>
DateUtil
public class DateUtil {
private static DateTimeFormatter dateFormatMedium =
DateTimeFormatter.ofLocalizedDate(FormatStyle.MEDIUM).withLocale(Locale.getDefault());
public static String getMediumStringFromMilli(long milli){
LocalDateTime time = Instant.ofEpochMilli(milli).atZone(ZoneId.systemDefault()).toLocalDateTime();
return dateFormatMedium.format(time);
}
}
build.gradle
dependencies {
classpath 'com.android.tools.build:gradle:3.6.1'
classpath 'com.android.databinding:dataBinder:1.0-rc0'
}
build.gradle (модуль)
dataBinding {
enabled = true
}
Получение привязка
FragmentObjectiveBinding binding = DataBindingUtil.setContentView(getActivity(), R.layout.fragment_objective);
Моя android -студия версии = 3.6.2
Я пытался очистить кеш / перезагрузить, изменить фрагмент xml имя файла.