@xamarin_russia

Страница 464 из 619
Roman
12.07.2018
13:36:28
?
The Elm Architecture

?
https://github.com/fsprojects/Elmish.XamarinForms

Google
Kirill
12.07.2018
13:52:14
разве что из Page дернуть какую-нибудь команду из контекста
У нас только BasePage дергает методы. В остальных местах страницы ничего не знают о VM, а VM о старницах. Методы через байндинги комманд подцепляются

Max
12.07.2018
13:52:49
ну еще можно Refresh команду дернуть, если очень хочется

Kirill
12.07.2018
13:53:51
Ну да. Только основные такие. Связанные с жизненным циклом. А так логику лучше писать независимую

Max
12.07.2018
13:56:15
Еще бывает надо дернуть команду на обновление поля на "Unfocus" или "OnChanged" текст полей

там тоже бывает приходится дернуть команду из обработчика на View

(если не заморачиваться с версткой)

Кита
12.07.2018
13:58:39
тогда вопросы когда и что диспозить вообще сами отпадают
наоборот появляется гораздо больше. А страницу уничтожит когда надо?

Kirill
12.07.2018
13:59:42
там тоже бывает приходится дернуть команду из обработчика на View
Ну такие события, если не затрагивают логику, то описываются в странице, если что из логики надо во ViewModel, то байндится команда, которая вызывается

Олег
12.07.2018
14:01:35
Всем привет! Пытаюсь реализовать Google Maps, все отображается. Когда ставлю IsShowingUser="True", дает исключние: Java.Lang.SecurityException: my location requires permission ACCESS_FINE_LOCATION or ACCESS_COARSE_LOCATION occurred В чем может быть проблема? Разрешения в манифесте проставил, юзаю андроид 7,1

Max
12.07.2018
14:01:55
наоборот появляется гораздо больше. А страницу уничтожит когда надо?
а страницу уничтожит когда NavigationService прикажет ^^

Google
Кита
12.07.2018
14:02:33
а страницу уничтожит когда NavigationService прикажет ^^
Dispose это когда страница уничтожена. OnDisappear это когда страница спряталась. NavigationService не должен приказывать уничтожать страницы. Только в редких случаях. Например при смене MainPage

Олег
12.07.2018
14:03:39
Читай про Runtime permissions. Надо запрашивать у пользователя разрешение
ты про алерт, который выскакивает при старте приложения? Сейчас почитаю про рантайм. Но я пока на эмуляторе запускаю, не на реальном устройстве. Тут чувак в туториале без лишних движений все запускает, странно как-то.

An
12.07.2018
14:04:22
Подскажите, вот открываю страницу, она onappear дергает vm, которая делает запрос, потом получаю инвалид токен, вызываю модальное окно для перелогина, скрываю его, но onappear уже не вызывается

Kirill
12.07.2018
14:05:11
ты про алерт, который выскакивает при старте приложения? Сейчас почитаю про рантайм. Но я пока на эмуляторе запускаю, не на реальном устройстве. Тут чувак в туториале без лишних движений все запускает, странно как-то.
Ну не обязательно при старте. Надо запрашивать пермишен тогда, когда он требуется. Возможно он запускает на Андроид версии до 6, или уже дан пермишен.

Олег
12.07.2018
14:05:43
а туториал от какого года?
вроде как свежий, весна этого года. На udemy курс

Kirill
12.07.2018
14:08:19
Max
12.07.2018
14:08:27
и как это поможет?)
да я вот и призадумался

An
12.07.2018
14:08:28
Ну да, при закрытии модальных окон OnAppearing не вызывается. Надо самому событие отправлять.
Но у меня же модальное может на любой странице появится, прям в любом месте

Есть идеи?

Только через MessagingCenter ?

Kirill
12.07.2018
14:33:23
Ну через MessagingCenter вполне себе неплохое решение. Как только появляется свежий логин - он через MessagingCenter отправляется. главное не забывать отписываться при закрытии страницы.

An
12.07.2018
14:34:51
MessagingCenter же для комуникации между вм, а не страницами, разве не?

Google
vladimir
12.07.2018
14:35:01
для чего угодно

Kirill
12.07.2018
14:42:30
MessagingCenter же для комуникации между вм, а не страницами, разве не?
Где угодно можно использовать, универсальный инструмент. И достаточно удобный, при правильном использовании.

Кита
12.07.2018
14:45:05
Kirill
12.07.2018
14:46:04
ну eventbus действительно учше не юзать. Только в крайних случаях.
Просто им, как и любым инструментом, надо уметь пользоваться. При неумелом использовании легко себе в ногу выстрелить им)

Kirill
12.07.2018
14:47:06
лучше его избегать
Ну сколько людей, столько и мнений)

Кита
12.07.2018
14:49:15
допустим как я делаю с модальным стэком. У меня в каждой “вьюмодели” есть возможность передать в роутер инициализатор модальной вьюмодели. В инициализатор модальной вьюмодели приходит инстанс модальной вьюмодели и я передаю ей колбэк, который дергается когда страница исчезает, появляется, дестроится - выбрать что нужно. И все. Без всяких eventbus. Внутри вьюмодель делает на dispose ссылку на action = null. и все. Локальный способ. Никаких глобальных евентбасов

Kirill
12.07.2018
14:56:49
Ну как вариант

Андрей Родионович
12.07.2018
15:02:21
Среда выполнения Common Language Runtime обнаружила недопустимую программу Подскажите пожалуйста что это значит

Оказалось, что проблема заключалась в том, что я пытаюсь в carouselview впихнуть skia CanvasView Подскажите, в чем проблема?

Ну, точне как её решить

<controls:CarouselViewControl.ItemsSource> <x:Array Type="{x:Type RelativeLayout}"> <RelativeLayout> </RelativeLayout> <RelativeLayout x:Name="Numbers" > <skia:SKCanvasView x:Name="Seven_Button" PaintSurface="Seven_Button_PaintSurface"

Андрей Родионович
12.07.2018
15:42:33
Вот кусок кода

Без скиа все было норм

mute
12.07.2018
15:43:03
ребят, кто-нибудь сталкивался с такой фигней. на иоси при переходе с обычной Entry на Entry c IsPassword="True" язык на клаве переключается?

mute
12.07.2018
15:43:56
vladimir
12.07.2018
15:44:06
нет
при вводе в первое поле

Андрей Родионович
12.07.2018
15:44:09
Окей, попробую

Google
mute
12.07.2018
15:45:22
всмысле кастомная? сторонее приложение или тип? типо нумерик или емаил или чонить

?

Андрей Родионович
12.07.2018
15:47:21
Попробуй таки переделать на ItemTemplate, а не на Source. Мало ли.
А как через itemtemplate задать ему layot’ы по типу как я делал с соурсом

vladimir
12.07.2018
15:47:23
ну в ios можно поставить клавиатуру от стороннего разработчика, но судя по вопросу, у вас стандартная стоит

Андрей Родионович
12.07.2018
15:47:41
Там я пишу итем сорс и пишу аррэй

А тут не понимаю чет

mute
12.07.2018
15:48:10
да. клава стандарт

vladimir
12.07.2018
15:48:41
тогда идей нет погуглите, может это нормальное поведение

Admin
ERROR: S client not available

Андрей Родионович
12.07.2018
15:53:55
Попробуй таки переделать на ItemTemplate, а не на Source. Мало ли.
Ну тобишь как в DataTemplate поместить больше одного layout?

Чтоб каждая вкладка карусели = новый layout

vladimir
12.07.2018
15:55:03
DataTemplate подразумевает, что ваши layout будут одинаковые, и достаточно один только написать

если вам нужны разные, то этот вариант не подходит

можно из кода тогда всё создавать

Андрей Родионович
12.07.2018
15:55:58
Но мне нужно запихнуть туда несколько layot’ов в которых будет разное колво елементов skia

itemsource выводит что-то несуразное

Ильфат
12.07.2018
18:46:07
кто-нибудь пользуется Xamarin MediaPicker? Раньше работало, а сейчас (подозреваю что после установки target sdk = 26) при вызове GetTakePhotoUI открывается белый экран, а не активити с камерой

Bogdan
12.07.2018
19:16:21
В xamarin native можно какую-то мввм библиотеку подключить?

Iván
12.07.2018
19:16:38
MvvmCross

Google
Bogdan
12.07.2018
19:16:42
И вообще принятая ли это практика? Или только на формах

С зеплина можно юи заюзать в xamarin Android?

Iván
12.07.2018
19:18:27
полагаю что принятая потому что руками разделять и биндить код на несколько платформ не очень-то и весело

Bogdan
12.07.2018
19:19:58
Кто-то с зеплином подскажет что-то?

Kirill
12.07.2018
19:25:41
Кто-то с зеплином подскажет что-то?
Смотря в каком виде он выдает код. В прицнипе swift похож на c# и можно с небольшими правками адаптировать и использовать код.

е сли выдает под xamarin.ios так вообще)

Bogdan
12.07.2018
19:26:53
А разве он не просто xml разметку генерит, которую по идее можно вставить и в xamarin Android

Я по ios не шарю ниче

Ильфат
12.07.2018
20:26:11
https://forums.xamarin.com/discussion/90456/problem-on-some-android-devices-specifically-lg-camera-does-not-display

Julius
13.07.2018
07:03:18
Как же больно устанавливать мак ос, установил по интернет на виртуалке не пашит

Есть другие способы как-то компилить не имя мака или мак ос на виртуалке?

Kiparin
13.07.2018
07:03:51
Julius
13.07.2018
07:04:04
Та интернета нет

Делал уже

Кита
13.07.2018
07:04:17
А если инициатором может быть любая страница, вот кто угодно может словить ошибку невалидности токена, и сразу вызвать модальное окно с логином
Почему это должно быть модальное окно? Но даже если так, то ошибку с токеном я бы ловил в 1м единственном месте в коде. Создал бы синглтоном интрецептор который все ошибки после каждого запроса обрабатывает. Он бы знал о роутере и знал бы пускай о вьюмодели логина.

Kiparin
13.07.2018
07:04:40
Та интернета нет
БЕз мака под мак собрать не получится . Эпл не показывает исходники своих ж

эмуляторов и запрещает любой реверсинжиниринг

Julius
13.07.2018
07:04:58
нехорошие

Кита
13.07.2018
07:05:00

Страница 464 из 619