@xamarin_russia

Страница 498 из 619
Constantine
03.08.2018
10:08:37
Коллеги, хотел предупредить. Где-то месяц назад одни красавчики из компании «Еламед» искали исполнителя заказа для своего приложения для термометра. Нашёлся в итоге я. И вот, когда настало время оплаты, ребятки попытались меня слегка нашутить:/ . Так что, если у них хватит смелости повторно искать исполнителя тут или кто-то из вас окажется на других площадках, не выкидывайте своё время зря, не связывайтесь с ними. Ну либо работайте по предоплате. Я теперь буду стараться только так:/

Boris
03.08.2018
10:11:03
С любой компанией надо либо через договор, либо через посредника

Constantine
03.08.2018
10:14:11
С любой компанией надо либо через договор, либо через посредника
Да вот теперь уже буду хоть немного думать вначале. А о каких посредниках речь?

Google
Boris
03.08.2018
10:16:46
Сайты типо апворка

https://www.guru.com/

Кита
03.08.2018
10:18:04
С любой компанией надо либо через договор, либо через посредника
договор тоже мало чего решает если наглые будут. Рассчет на то что ты не пойдешь в суд из-за нескольких даже пускай десятков тысяч, а если пойдешь то не сможешь доказать факт выполнения работ именно тобой(сложно достаточно), а ещё они не будут являться на заседания по месту подачи иска, все будет откладываться и тд. У агентов должна быть в первую очередь взаимная зинтересованность поддерживать рабочие отношения, которая впоследствии закрепляется договорам. Но как только заинтересованность пропадает - никакой договор не спасет. Действует это в обе стороны

Кита
03.08.2018
10:22:52
Хотя бы это дает пруф, что заказчик тот за кого себя выдает
это да. Но на самом деле я года 3 назад вел одного заказчика из Сингапура, думал что он CEO, но оказался CTO и права подписывать бумаги не имел. Но это вскрылось постфактум. Ещё что может спасти в такой ситуации - высокие репутационные потери обоих агентов. когда оба агента достаточно известны каждый в своей сфере и каждый дорожит репутацией. Но если вообще ничего подписано не было, даже NDA, то все плохо конечно.

Андрей Родионович
03.08.2018
10:23:32
Ребята, подскажите пожалуйста, как можно получить вьюхи из lisview viewcell?

Олег
03.08.2018
10:25:16
Я надеюсь ты не положил ListView в ScrollView...
Блин, Влад, я как бы в курсе, что так делать нельзя, но пришлось.? Если добавить листвью вне скрулла, он отображается статично сразу и размер скрулла на экране уменьшается. Мне надо пролистать инфу на странице и только в самом внизу будет листвью.

Kirill
03.08.2018
10:34:19
Олег
03.08.2018
10:34:24
Дэээ... Я попробую, когда очухаюсь, спасибо. Я сегодня всю ночь пилил проект)

Kirill
03.08.2018
10:34:45
Низзя так Вон, @BOOMikru сказал тебе что у ListView есть header и footer
Ну да, плюс можно разные ячейки через template selector сделать и их тоже как хедер/футер использовать

Андрей Родионович
03.08.2018
10:35:12
а для чего это может понадобиться?
У вьюх нужно было проперти менять(В каждой отдельно) Но я протупил и забыл что это можно сделать через биндинг

Google
Андрей Родионович
03.08.2018
10:45:53
Хотел бы тогда задать такой вопрос по привязке Допустим у entry биндится текст от моего класса Я хочу чтобы и в коде я мог менять текст ентри(с помощью моих объектов) и чтоб энтри менял свойства моих объектов Нужно ли реализовывать INotifyPropertyChanged? Если нужно, то не совсем понимаю что с этим ивентом делать(

Ну типо есть энтри Я написал в него текста, мои объекты обновились Потом я что то сделал, мои объекты обновились, и вместе с ними мой энтри

Андрей Родионович
03.08.2018
10:49:44
Мне не нужно биндить на контроллы

Опять таки, есть объект класса и есть энтрик

И я хочу двустороннюю связь

Вот и спрашиваю, что мне делать с ивентом propertychanged у моих объектов

По событию менять текст в энтри?

Андрей Родионович
03.08.2018
11:03:43
этот интерфейс нужен, чтобы View узнала об изменениях а если в обратную сторону, то просто обновите ваши объекты из сеттера вашего свойства, привязанного к entry
Тобишь мне не нужно писать реализацию этого ивента, если я просто хочу, чтоб вью обновилась по обновлению объектов? И в сеттере не нужно ничего мудренного писать?)

Тобишь тот ивент нужен чисто, если я захочу что-то своё помимо привязки дописать?

Под реализацией ивента — обработчик события имею ввиду

vladimir
03.08.2018
11:06:23
чтобы View узнала об изменениях, вам нужно реализовать INotifyProperyChanged интерфейс

и вызывать из сеттера событие

что за объекты-то?

Андрей Родионович
03.08.2018
11:06:57
аааа

Объекты класса

vladimir
03.08.2018
11:07:24
непонятно

Андрей Родионович
03.08.2018
11:07:31
Хм

Google
vladimir
03.08.2018
11:07:47
все члены класса? любые?

Андрей Родионович
03.08.2018
11:07:50
А как объяснить Объекты, которые выступают в качестве сурса для листвью

vladimir
03.08.2018
11:08:09
свойства, я полагаю

Андрей Родионович
03.08.2018
11:08:50
Если вы про строчку с обновлением объектов, то да там я имелл ввиду обновление свойств объектов

vladimir
03.08.2018
11:09:14
я ни про какую строчку не говорю - у меня даже кода нет

я про свойсва класса

но, если вы говорите про свойства объекта какие-то, то это ещё непонятней

Андрей Родионович
03.08.2018
11:09:56
Объект это инициализированый класс

Ладно, я сам не понимаю о чем мы)

Большое спасибо энивей)

Про сеттер особенно

vladimir
03.08.2018
11:10:35
и что за классы такие внутри класса?

vladimir
03.08.2018
11:10:40
ну ладно

Андрей Родионович
03.08.2018
11:10:45
Та я так не говорил

Говорю есть объекты, у них есть свойства

Всё

И по обновлению этих свойств хочу обновлять вьюхи

Мб не так выразился

vladimir
03.08.2018
11:11:46
присвойте объект как BindingContext к View

и в его свойстве вызывайте PropertyChanged

Google
Андрей Родионович
03.08.2018
11:12:41
Эт я понял уже вроде, спасибо) Сейчас буду пробовать

Андрей Родионович
03.08.2018
11:18:16
Читаю, понимать это почему то сложновато

Я вижу как это работает, но немогу понять почему?

Kirill
03.08.2018
11:27:49
Я вижу как это работает, но немогу понять почему?
Когда прописываешь байндинг 0 говоришь вьюхе брать значение для данного поле их такого-то проперти в BindingContext. (или писать в это поле). Когда изменил проперти, надо вызвать событие PropertyChanged с именем проперти, что бы вьюха увидела, что значение изменилось и могло у себя применить его. Без события вьюха не узнает о изменении свойства

Андрей Родионович
03.08.2018
11:31:44
Спасибо Просто не понимаю как работает биндинг внутри Я могу поверить что вьюха узнает через событие, но хочется глянуть как и почему оно работает)

Не знаю как это правильно объяснить

vladimir
03.08.2018
11:32:12
по именам полей

Андрей Родионович
03.08.2018
11:32:16
Саму логику работы его

Admin
ERROR: S client not available

Андрей Родионович
03.08.2018
11:33:52
по именам полей
Я не о том немного Ну да ладно Перечитаю доки

Max
03.08.2018
11:37:36
Саму логику работы его
происходит событие PropertyChanged с параметром nameof(PropName). Подписчик (View) ищет в Context Property с именем PropName, и если вдруг такое есть, то меняет его значение на Parametr, к которому поле «прибинжено». Допустим Property «Text» у Label прибинжено к полю VmText у ViewModel. Внутри ViewModel ты поменял VmText и хочешь чтобы это отобразилось. Ты вызываешь событие PropertyChanged(«VmText»); View(подписчик) у которого BindingContext = этой ViewModel, подписан на это событие. Он знает, что если был вызван PropertyChanged(«VmText»), то надо сделать Label.Text = VmText; тем самым перезатерев старое значение новым

vladimir
03.08.2018
11:38:07
Я не о том немного Ну да ладно Перечитаю доки
https://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Core/BindableObject.cs#L365

Max
03.08.2018
11:38:59
Ну и да, еще есть посредник, так называемый Converter

Андрей Родионович
03.08.2018
11:38:59
Большое спасибо)

Max
03.08.2018
11:39:05
который можно заменить на свой

потому что все что ты отображаешь - это string

Max
03.08.2018
11:40:00
допустим чтобы в поле вводить текст и сразу его преобразовывать в Decimal твоей ViewModel, то нужно задать правило как брать значение из View и какое записывать во VM

Если бы так в статье на метаните написали Хотя скорее я тугой)
Ну, я этого не видел нигде. Везде пишут «биндинг, байндинг», а написать как оно работает лень. Хотя нифига не очевидно

Google
Андрей Родионович
03.08.2018
11:42:20
Ну, я этого не видел нигде. Везде пишут «биндинг, байндинг», а написать как оно работает лень. Хотя нифига не очевидно
Вот я о том же, я вижу как его нужно реализовывать, но как оно работает не мог понять

Max
03.08.2018
11:42:50
vladimir
03.08.2018
11:43:45
Конечно, если знать, что гуглить

Yura
03.08.2018
13:30:57
получилось что-нить? во времена 5го мвх пытался, и у меня не взлетело
я долго возился с настройками дебага, пока у меня не закралась мысль, что отладка nuget сборок не работает именно из-за того, что это проект на андроид. Попробовал запустить asp.net core проект, там отладка сборок работала. Возможно дело и в mvvvmcross тоже, неплохо было бы его проверить с uwp, но не вижу смысла.

Serhii
03.08.2018
13:39:56
Всем привет. У нас сейчас задача сделать в приложении iOS Native авторизацию изпользуя apple Id что на устройстве. Есть ли возможность получить этот apple Id как по аналогии с гуглом? По гуглу я делал по этой статье на андроид. https://timothelariviere.com/2017/09/01/authenticate-users-through-google-with-xamarin-auth/

Андрей Родионович
03.08.2018
13:51:02
Ребят, объясните пожалуйста На ios поставил itemsource для listview, биндинг и все заработало На дроиде ставлю itemsource потом обновляю колекцию, а он null(itemsource)

Почему так может быть?

Код один и тот же

vladimir
03.08.2018
14:21:24
какой тип у коллекции?

и как вы обновляете?

и как выглядит ваше свойство коллекции?

Андрей Родионович
03.08.2018
14:22:43
Вы знаете, только что поставил точку останова, там где листвью биндится и заработало

Сейчас пробую без неё ещё раз

Теперь без неё работает

Я не знаю что и сказать

Так и должно быть?

vladimir
03.08.2018
14:23:33
да

?

Андрей Родионович
03.08.2018
14:23:43
?

Dmitriy
03.08.2018
14:58:50
Уиии, умное слово знаю - race condition - ищи что на андроиде выполняется медленнее чем на яблоке :) Когда останавливаешь оно успевает выполниться, когда просто запускаешь - нет :)

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