Не запущено событие поворота сетевой панели Tizen

#.net #emulation #tizen #tizen-wearable-sdk

#.net #эмуляция #tizen #tizen-носимый-sdk

Вопрос:

Пытаюсь начать разработку виджета для Galaxy Watch. Делаю это в Visual Studio 2017. Использование расширения NET (на основе Xamarin)…. для отладки используется эмулятор Tizen (носимый 5.0). Я пытаюсь обработать событие поворота ободка. Вот простейший код :

     [XamlCompilation(XamlCompilationOptions.Compile)]
public partial class MainPage : CirclePage,IRotaryEventReceiver
{
    public MainPage()
    {
        InitializeComponent();
    }

    public void Rotate(RotaryEventArgs args)
    {
        throw new NotImplementedException();
    }
}
  

но моя точка останова внутри функции поворота никогда не срабатывает…
Если я поставлю точку останова в construktor — это да, срабатывает — так что, похоже, среда в порядке (скомпилирована развернута запущена подключена …)
есть идеи, что не так?

Ответ №1:

Похоже, вы не установили свойство RotaryFocusObject для IRotaryEventReceiver. RotaryEvent IRotaryEventReceiver не будет вызван, если не установлен RotaryFocusObject.

Для получения дополнительной информации, пожалуйста, прочтите руководство по API и рассмотрите возможность добавления следующих строк в ваш файл Xaml. https://samsung.github.io/Tizen.CircularUI/guide/IRotaryEventReceiver.html

 <w:CirclePage
  ...

  x:Name="MyCirclePage"
  RotaryFocusObject="{x:Reference MyCirclePage}">
  

Также точки останова строки должны работать, если вы выполняете отладку с помощью эмулятора Wearable 5.0 в VisualStudio. Вот список функций, поддерживаемых в настоящее время отладчиком для Tizen 5.0.
https://github.com/Samsung/netcoredbg/wiki/Features