Size: a a a

Xamarin Developers (MAUI)

2021 March 15

M

Masha in Xamarin Developers (MAUI)
Добрый вечер,простите за возможно тупой вопрос,но банально не вижу ошибку.Есть карта которую я обьявляю во ВьюМоделе и при нажатии на кнопки должен поменяться тип этой карты,но оно не работает,может кто-то подкажет ошибку.Сама команда работаtn ибо там есть другой функционал связаный с юа,но именно с картой не получается.
 <ContentView
           AbsoluteLayout.LayoutBounds="0, 0, 1, 1"
           AbsoluteLayout.LayoutFlags="All"
           Content="{Binding Map}" />



ВьюМодель

       public Map map { get; set; }
       public Command StandartMapCommand { get; set; }

       public Command SatelliteMapCommand { get; set; }

       public Command HybridMapCommand { get; set; }
     public MasterPageVM()
       {
            Map = new Map();
          StandartMapCommand = new Command(StandardSelected);
           SatelliteMapCommand = new Command(SatelliteSelected);
           HybridMapCommand = new Command(HybridSelected);
      }
  public void StandardSelected()
       {
       
               Map.MapType = Xamarin.Forms.Maps.MapType.Street;

         
       }

       public void HybridSelected()
       {
       
               Map.MapType = Xamarin.Forms.Maps.MapType.Hybrid;
           }

       

       public void SatelliteSelected()
       {
       
               Map.MapType = Xamarin.Forms.Maps.MapType.Satellite;
           }
источник

EN

Eugeny Nikolaev in Xamarin Developers (MAUI)
Masha
Добрый вечер,простите за возможно тупой вопрос,но банально не вижу ошибку.Есть карта которую я обьявляю во ВьюМоделе и при нажатии на кнопки должен поменяться тип этой карты,но оно не работает,может кто-то подкажет ошибку.Сама команда работаtn ибо там есть другой функционал связаный с юа,но именно с картой не получается.
 <ContentView
           AbsoluteLayout.LayoutBounds="0, 0, 1, 1"
           AbsoluteLayout.LayoutFlags="All"
           Content="{Binding Map}" />



ВьюМодель

       public Map map { get; set; }
       public Command StandartMapCommand { get; set; }

       public Command SatelliteMapCommand { get; set; }

       public Command HybridMapCommand { get; set; }
     public MasterPageVM()
       {
            Map = new Map();
          StandartMapCommand = new Command(StandardSelected);
           SatelliteMapCommand = new Command(SatelliteSelected);
           HybridMapCommand = new Command(HybridSelected);
      }
  public void StandardSelected()
       {
       
               Map.MapType = Xamarin.Forms.Maps.MapType.Street;

         
       }

       public void HybridSelected()
       {
       
               Map.MapType = Xamarin.Forms.Maps.MapType.Hybrid;
           }

       

       public void SatelliteSelected()
       {
       
               Map.MapType = Xamarin.Forms.Maps.MapType.Satellite;
           }
Карта в принципе отображается? Тайлы подгружаются? Вообще карту лучше объявить во вью и убрать из vm
источник

EL

Eugene Lean in Xamarin Developers (MAUI)
Коала 🇦🇺
Здравствуйте. Подскажите с десериализацией. Использую в проекте генерированный клиент для апи. Так как генератор в разработке не все что ожидаешь от него в нем работает. Сейчас остановился на том что с АПИ приходит oneOf респонс с различными видами ошибок, клиент возвращает вместо объекта значение в строковом типе (Json) я делаю так JsonConvert.DeserializeObject<IdentityProblemDetails>(e.ErrorContent.ToString());
и  получаю эксепшен
Unable to find a default constructor to use for type WebAPIClient.Model.IdentityProblemDetails. Path 'identityErrors', line 1, position 18
в самой модели есть конструктор.
Конструктор в коде параметризированный, нужен же дефолтный - без параметров
источник

M

Masha in Xamarin Developers (MAUI)
Eugeny Nikolaev
Карта в принципе отображается? Тайлы подгружаются? Вообще карту лучше объявить во вью и убрать из vm
карта отображается,а как тогда сделать чтобы во вьюмоделе менять тип карты? в команде надо
источник

EL

Eugene Lean in Xamarin Developers (MAUI)
Коала 🇦🇺
Здравствуйте. Подскажите с десериализацией. Использую в проекте генерированный клиент для апи. Так как генератор в разработке не все что ожидаешь от него в нем работает. Сейчас остановился на том что с АПИ приходит oneOf респонс с различными видами ошибок, клиент возвращает вместо объекта значение в строковом типе (Json) я делаю так JsonConvert.DeserializeObject<IdentityProblemDetails>(e.ErrorContent.ToString());
и  получаю эксепшен
Unable to find a default constructor to use for type WebAPIClient.Model.IdentityProblemDetails. Path 'identityErrors', line 1, position 18
в самой модели есть конструктор.
источник

Н

Николай in Xamarin Developers (MAUI)
Коллеги подскажите, на айфоне когда прокручивается collectionView, бывает фризит изображение, это с чем связано и как это можно лечить?
источник

АИ

Артём Иванов... in Xamarin Developers (MAUI)
подскажите куда кидать файл чтобы на андроиде загрузить файл: ml_rus = new ML(Path.Combine(folderPath, "model_rus.zip")); ?
источник

К🇦

Коала 🇦🇺 in Xamarin Developers (MAUI)
Eugene Lean
Конструктор в коде параметризированный, нужен же дефолтный - без параметров
А преобразовать можно как нибудь, или атрибут выставить?
источник

EL

Eugene Lean in Xamarin Developers (MAUI)
Коала 🇦🇺
А преобразовать можно как нибудь, или атрибут выставить?
По ссылке как раз атрибут https://www.newtonsoft.com/json/help/html/JsonConstructorAttribute.htm
источник

EN

Eugeny Nikolaev in Xamarin Developers (MAUI)
Masha
карта отображается,а как тогда сделать чтобы во вьюмоделе менять тип карты? в команде надо
Меняйте во вью, посмотрите этот пример, там есть смена типа карты

https://github.com/xamarin/xamarin-forms-samples/blob/master/WorkingWithMaps/WorkingWithMaps/WorkingWithMaps/MapTypesPage.xaml.cs
источник

К🇦

Коала 🇦🇺 in Xamarin Developers (MAUI)
В имеющуюся модель можно добавить?
источник

EL

Eugene Lean in Xamarin Developers (MAUI)
Коала 🇦🇺
В имеющуюся модель можно добавить?
Думаю да
источник

К🇦

Коала 🇦🇺 in Xamarin Developers (MAUI)
Eugene Lean
Думаю да
Спасибо, посмотрю.
источник

M

Masha in Xamarin Developers (MAUI)
в проекте кодбихайнд,то во вьюмоделе не получиться так сделать?
источник

SZ

Slava Zolotov in Xamarin Developers (MAUI)
Masha
в проекте кодбихайнд,то во вьюмоделе не получиться так сделать?
получится. Делаете интерфейс сервиса, реализуете его в коде страницы, а потом через DI прокидываете в вью модель
источник

MO

Mr. Onion in Xamarin Developers (MAUI)
Masha
в проекте кодбихайнд,то во вьюмоделе не получиться так сделать?
Вьюмодель о вью в идеале ничего не должна знать
источник

MO

Mr. Onion in Xamarin Developers (MAUI)
Сделайте все во вью и не мучайтесь
источник

MO

Mr. Onion in Xamarin Developers (MAUI)
Это нормально, не всегда все должно быть во вьюмодели
источник

M

Masha in Xamarin Developers (MAUI)
а есть ли разница в производительность?например если карта и все к ней методы будут в кодбихайнде или во вьюмоделе,будет ли разница?
источник

MO

Mr. Onion in Xamarin Developers (MAUI)
Masha
а есть ли разница в производительность?например если карта и все к ней методы будут в кодбихайнде или во вьюмоделе,будет ли разница?
Нет разницы
источник