Я пытаюсь использовать шаблон проектирования MVVM
и использовать метод обратного вызова для получения текущего местоположения в моей модели представления, но я не могу передать значение Location.
У меня естьдовольно стандартный интерфейс, который реализует LocationListene
здесь:
public interface MLBGameLocationListener extends LocationListener { }
В моем фрагменте я реализую интерфейс MLBGameLocationListener
здесь:
public class MLBGameFragment implements MLBGameLocationListener {
@Override
public void onLocationChanged(Location location) {
myViewModel.getGameLocation().set(location.getLatitude() + " " + location.getLongitude())
}
}
Я устанавливаю gameLocation field in my
GameViewModel , which is an
ObservableField``
У меня есть кнопка в моем фрагменте, которая действует как getGameLocation()
кнопка, связанная через мой фрагмент с этой привязкой в моем тексте:
android:onClick="@{() -> viewModel.getGameLocation()}"
Я хотел бы получить доступ к моей переменной mViewModel.gameLocation
в моем методе getGameLocation
, и я думаю, что она будет доступна, потому что я использую реализацию onLocationChanged()
Я прошу прощения за вопрос новичка, япросто пытаюсь понять MVVM
дизайн и обратные вызовы в Android.