Программирование : Dart & Flutter по-русски
Fearless Cry
в релизе наверное ни на сколько
???????
Если что, Supernova только под мак)
???????
Столько времени откладывал знакомство, чтоб в выходные узнать, что оно под самую популярную ось - нету)
???????
[
{
"type": "link",
"text": "https://intercom.help/supernova/en/articles/2670597-supported-operating-systems"
}
]
Peter Dmitrienko
А разве можно кроссплатформенно разрабатывать на флаттере под виндой?
???????
Разрабатывать можно
???????
Собирать под мак нельзя
???????
Ну если не пользоваться CI/CD конечно)
???????
А так, разрабатывать то никто не запретит, учитывая то, что дарт - абсолютная кроссплатформа)
Daniil Kolyasnikov
Или виртуалка
Олжас Сулеймен
Когда d2n только под то на чем сидишь
???????
Ну жа, если не брать в расчет CI/CD)
???????
В целом, мб допилят, тк этот момент записан в виде сноски к d2n.
???????
Если правильно помню, что вселяет надежду.
Jeka Goroshkin
может есть какой-нить плагин для студии, который приватные методы класса расставляет после публичных? или так не принято? самому лень раскладывать в разные части класса
Dmytro Bondarchuk
Всем привет) Очень нужно помощь :) Нужно сделать чтобы каждый день в определённое время в бекграунде выполнялась небольшая таска в оффлайне (запрос в бд и показ пуш уведомления). Какой лучше plugin использовать? Делал ли кто-то подобное? Может есть какие-то отзывы или рекомендации?
Урусай
Как сделать что бы Container.width был равен height???
???????
LayoutBuilder Хоть вопрос и не корректный
Ulugbek Isroilov
нубский вопрос по блоку (самому паттерну не конкретно по библиотеке) в общем хочу использовать один блок для получения нескольких данных (категории и продукты) как это правильно сделать? я делаю запрос к блоку с получением категорий и продуктов. категории приходят первыми и блок возвращает стейт с категориями. потом приходят продукты и блок возвращает стейт с продуктами. есть 2 экрана: для показа категорий, и соответственно для продуктов. на 1 экране категории показываются несколько секунд пока блок не возвращает стейт с продуктами => в блоке теперь стейт это объект с продуктами и категорий естественно больше там нет и нечего показывать. получается нужно каждый раз открывая экран делать ивент к блоку и запрашивать данные с бека? или как-то можно сказать стримбилдеру "сохрани этот стейт"?? или что-то в этом духе. вроде читал, что тут есть люди использующие 1 блок на весь апп, может подскажите что как делается в этом случае.
Урусай
LayoutBuilder это понятно :) У меня есть Сontainer, который внутри Row по умолчанию имеет высоту равную родителю, а ширину равную child. Как сделать так, что бы width был height?
Fearless Cry
Row->Expanded
???????
Ты можешь кэшировать, например. Ну или хранить этот список в контексте выше твоего экрана.
Урусай
У меня Row [TextField, Container], TextField по умолчанию Expanded. Я хочу что бы Container имел ширину равную высоте, то есть что бы получился ровный квадратик
Fearless Cry
можешь провайдер блока перенести выше по дереву (в корень приложения), либо в репозиториях предусматривать кэш, чтоыб при инициализации блока они подтягивали то что лежит в памяти/базе
Fearless Cry
ну так AspectRatio
Урусай
Хм. Работает. Но разве этот виджет для этого сделан?
Fearless Cry
да для этого
Ulugbek Isroilov
в любом случае получается что при возвращении на экран с категориями нужно делать ивент 'дай мне список категорий' (он потом берет из кеша либо из апи) так получается?
Fearless Cry
не обязательно
Урусай
А, точно. В описании это и сказано ??
Урусай
А по названию виджета и не скажешь
Fearless Cry
СоотношениеСторон
Fearless Cry
действительно не скажешь)
Урусай
Если с такой точки зрения посмотреть то да. А то у меня изначально это название ассоциировалось с "процентное соотношение к родителю"
Evgenii Elchev
Каждый раз когда я встаю в тупик по верстке. Начинаю с просмотра списка виджетов по порядку)
Fearless Cry
не всегда помогает
Урусай
Я тоже подобное практикую, но в этот раз мне это не помогло)
Evgenii Elchev
Да, у меня до сих пор есть вопрос. Как уравнять размеры двух виджетов из абсолютно разных веток дерева. Пока в голову только через некий стейт и редрав. Но это как то костыльно.
Fearless Cry
разных веток в контексте одного экрана?
Fearless Cry
а кто за эталон берётся?
Evgenii Elchev
Это два текста. За эталон берётся тот в котором текста больше
Fearless Cry
ну это не решается виджетами, я думаю
Evgenii Elchev
Хреново. В ios это изи решается. Создаёшь правило что два элемента равной ширины и все разруливается.
Evgenii Elchev
А как бы ты решил такую задачу?
???????
IntrinsicHeight и IntrinsicWidth в некоторых моментах могут помочь
???????
Но ими лучше не злоупотреблять
Evgenii Elchev
Почитаю про них. Спс
???????
Они слишком избыточны и делают бобо перфомансу.
Evgenii Elchev
Я в итоге свой кейс решил с помощью нескольких вложенных table, но мало того что это по исполнению не красиво, так ещё и задачу до конца не решило. Просто сделало более мене похожим на то что мне надо было
Fearless Cry
хз не уверен
???????
Тама дополнительная проверка проходит до окончательного построения дерева
???????
Причем это написано прям в их описании, есичо)
???????
[
{
"type": "code",
"text": "In the worst case, this widget can result in a layout that is O(N?) in the depth of the tree."
},
""
]
Fearless Cry
ну там двойной обход какой то да
???????
Так що большие списки и деревья лучше не вкладывать
Fearless Cry
но это опять же при нормальной работе с обновлением юая ваще не должно трогаь
Evgenii Elchev
О, весь AutoLayout в ios работает с квадратичной сложностью и ниче)))
???????
Ну вам никто не запрещает энто дело пользовать
???????
Просто предупреждают, что можете в ногу себе выстрелить тут
Fearless Cry
ну у неё не сильно много применений
???????
[
{
"type": "link",
"text": "https://medium.com/flutter-community/flutter-layout-cheat-sheet-5363348d037e"
}
]
Fearless Cry
обычно я в них оборачиваю виджеты которые экспандядтся при свободной площади
???????
Ну основное тута показано
Fearless Cry
можно написать bottom: 0, right: 0
A1ex Petrov (К)
Всем привет, кто нибудь делал PageView.builder внутри обычной страницы? А то жалуется на не заданную высоту
A1ex Petrov (К)
Horizontal viewport was given unbounded height.
Alexandr Ermolenko
Попробуйте в Expanded() обернуть.
A1ex Petrov (К)
Пробовал: "RenderFlex children have non-zero flex but incoming height constraints are unbounded."
Fearless Cry
внутри обычной страницы это как?
A1ex Petrov (К)
Не сразу от скафолда билдишь страницу, а внутри есть и другие виджеты, внутри Column идут по очереди, и ниже идет PageView.builder, и он жалуется на не заданную высоту
A1ex Petrov (К)
[
"Короче проблема такая, как вписать PageView в ",
{
"type": "code",
"text": "SingleChildScrollView"
},
", параметры высоты не дают это сделать"
]
petyappetrov
может лучше разделять эти сущности? но ты конечно можешь сделать один блок - "Categories" где внутри будет поле "products", в котором будут лежать подгруженные продукты соответсвующей категории
Taras
[
"может кто подсказать под Windows не запускается эмулятор android studio пишет ",
{
"type": "pre",
"text": " emulator: ERROR: Unknown AVD name [Pixel_2_API_25], use -list-avds to see valid list. HOME is defined but there is no file Pixel_2_API_25.ini in $HOME\\.android\\avd (Note: Directories are searched in the order $ANDROID_AVD_HOME, $ANDROID_SDK_HOME\\avd and $HOME\\.android\\avd)",
"language": ""
},
" переменные среды добавил но ничего не изменилось"
]
northelks
а второй sha добавил?
Nick
а как запускать пробуете?
Nick
из студии попробуйте запустить
Taras
вот сообвенно там эмулятор отдельно то можно запустить а проект на нем нет
northelks
добавить в файербейз sha1 и sha256 нужно
northelks
да, перезалить файлик в апку
Alex Kharechko
[
{
"type": "code",
"text": "Play Защите не удалось найти информацию о разработчике…"
},
" - при установке с плэймаркета это исчезнет?"
]
Mitai
вот так выглядит рабочий вариант
Mitai
[
"class Hero {\n final int id;\n String name;\n\n Hero(",
{
"type": "link",
"text": "this.id"
},
", ",
{
"type": "link",
"text": "this.name"
},
");\n\n factory Hero.fromJson(Map hero) =>\n Hero(_toInt(hero['id']), hero['attributes']['name']);\n\n Map toJson() => {'id': id, 'name': name};\n}\n\nint _toInt(id) => id is int ? id : int.parse(id);"
]
Gorohov Valeriy
[
{
"type": "link",
"text": "https://github.com/fullstack-development/developers-roadmap"
},
"\nКто-нибудь знает подобное для Flutter?"
]
Alexander Melnikov
Вряд ли
Денис
Мой не работал? Или ты просто сахару добавил?
Karen
Я бы ещё посмотрел на размер комьюнити
Evgenii Elchev
Просто надо понимать для чего конкретный инструмент) angular это способ сделать web страницу like desktop application. Другими словами.Завести на неё стейт, оживить эти все кнопочки, менять стейт в зависимости от нажатий и менять UI в зависимости от стейта. Причём все это без перезагрузки страницы и вот этого всего
???????
Ты понимаешь, что зря тратишь время? Чел по оффтопить зашел.
Evgenii Elchev
Я никуда не тороплюсь)
Fearless Cry
это не повод начинать флудить тебе
???????
Что такое статический метод класса?
???????
Ну это чтоб остальным было понятно, что не стоит тратить время на изучатора ангуляра-джанги.
Evgenii Elchev
Я до сих пор доку по языку не прочёл, на интуиции пишу)
???????
Пусть основы пройдет, потом ооп, потом async, а потом уже приходит.
???????
Не тратьте время на "static это const"
Fearless Cry
пол это лава
Fearless Cry
статический метод класса везде один и тот же
Evgenii Elchev
В целом да, но есть нюансы)
Evgenii Elchev
Вообще все любят на собесах задавать особенные вопросы по языку.
NewBalanceM5
мне кажется он троль)
???????
Ну тогда слииииишком тонкий, настолько, что даже я не выкупаю)
NewBalanceM5
я просто думаю, что не возможно вот такие вопросы задавать и надеюсь, что он просто троль.
Evgenii Elchev
Да не. Он просто молодой, общительный, учит первый язык. Ему хочется поделиться этим. А за мат часть браться скучно.
NewBalanceM5
троль пожилой.
Evgenii Elchev
Это не так работает. Ты загружаешь в голову инфу. Которая поможет тебе в реальных проектах.
Alexander Melnikov
рофел)
Evgenii Elchev
Говорят в 37 тупеют. Хотя я такое про 25 слышал. До сих пор не знаю. Боятся мне или нет)
Vyacheslav
Мне 37, пока держусь )))
Evgenii Elchev
Нет ощущения что думать сложнее? Новое не усваивается, быстро устаёшь от мыслительных процессов?)
Vyacheslav
Скажу так, лень приходит намного быстрее, а насчет думать сложнее - так по моему наоборот, все проще. Ну и глицин вроде помогает )))
???????
Сча Кот придет, всем банхамером стукнет, завязывайте.
Dart Flutter
народ кто наблюдает проблему, после обновление флаттера не видит андройд студион ни эмулятора ни реальное устройство. Пишет loading и всё
Dart Flutter
запустил приложуху чисто андройдовскую андройд студио видит эмулятор и норм грузит
Alex Kharechko
кто сталкивался: приложение запускается потом черный экран потом показует страницу. я уже как-то сталкивался с таким не помню как исправил, но вроде не редкая проблема
Yerassyl
ребят, такой жисон как можно парсить
Yerassyl
{"year":2020,"monthValue":2,"month":"FEBRUARY","dayOfMonth":18,"dayOfYear":49,"dayOfWeek":"TUESDAY","hour":1,"minute":39,"second":44,"nano":382000000,"chronology":{"calendarType":"iso8601","id":"ISO"}
Валерий
если добавить еще 1 } в конце то вполне
Николай
[
{
"type": "mention",
"text": "@PlugFox"
},
" Фокс, так стоит ли внимания супернова? Чет я не в восторге с первого взгляда"
]
Валерий
как по мне она удобна лишь для того чтобы интерактивный прототип сделать и показать заказчику. не более.
Taras
Может кто подскажет , почему на Windows flutter может не видеть в Android Studio ни девайсы ни эмулятор?
Tamerlan Godzhiev
А вы в девайсе режим разработчика врубили?
Tamerlan Godzhiev
Драйвер на кабель поставили?
Alexander
Adb перезапустить
Taras
А эмулятор почему не видит(андроид запускается) а flutter проект не видит?
Taras
Может глюк какой-то в последней версии?
Fortune's Desire
у меня было такое, но после нажатия на зеленую стрелку и первичного билда
Fortune's Desire
там появляется выбранный телефон
Fortune's Desire
(пиксель 3а апи) в моем случае
Fortune's Desire
и приложуха запускается
Fortune's Desire
самовыбирается
Taras
Я просто на Windows sdk поместил не на диск С а на D
Taras
вот он никак его не видит хотя ж как бы в проекте указано все
Taras
в общем нашел решение
Taras
может кому пригодится если вздумает перенести android sdk из каталога по умолчанию)
Taras
[
{
"type": "pre",
"text": " flutter config --android-sdk D:\\android_sdk",
"language": ""
}
]
Constantine
господа, а кто-нибудь нашел быстрый способ генерации «верстки» из фигмы?)
petyappetrov
подсказка: перейти на убунту
???????
Ты чат с ЛОР'ом не перепутал?
???????
Там плагин жеж был опенсорсный
Constantine
он никакой, пробовал ??
Constantine
и он никакой, потому что ему уже 1.5+ лет и мертвый
???????
Ну значит вручай дизайнерам адоб ХД)
Constantine
ну мы взрослые люди же ??
???????
Ну или супернову, она, вродь, из скетча могет
Constantine
дальше думаю пробовать конвертнуть фигму в скетч под супернову
???????
на самом деле, лучше лапками верстать
???????
особенно если хочешь нормальную адаптивность-респонсивность
Constantine
это тоже понятный момент )
petyappetrov
простите, что вы сказали? я не расслышал
Constantine
линукс орг ру, ну ты чего
???????
я говорю: детский сад этажом ниже
Constantine
проверка на возраст, да
petyappetrov
ладно, всё, больше не буду, и мне не 35
Constantine
да нам тоже не 35
Fortune's Desire
[
{
"type": "link",
"text": "https://medium.com/flutterpub/the-mvp-architecture-pattern-in-flutter-with-simple-demo-65ab3282c54b"
}
]
Fortune's Desire
Я чет выпал от такого числа гетов
Fortune's Desire
Это норм или не стоит вникать?
petyappetrov
[
"я использую ",
{
"type": "link",
"text": "https://bloclibrary.dev/#/"
},
"\nпока боли нет"
]
Alexander PhatoM
Я джаву возненавидел из за такого количества гетеров и сетеров)
Alex Kharechko
выход есть
Vyacheslav
Парни, насколько востребована такая услуга, если буду на своем аккаунте публиковать приложения?
Sasha
ребят, как можно на Navigator.pop передать какое то значение?
Sasha
Ну, у меня есть кнопка сохранения, при нажатии вызывается Navigator.pop(); и мне нужно передать на предыдущий экран передать переменную
Sasha
а блин, я про него читал уже давно, забыл походу, спасибо)))
Nightwelf
кто скажет что я делаю не так? надо отправить уведомление с ноды, оно приходит, но в шторке его нет
Nightwelf
let message = { notification: { title: data.title, body: data.subtitle }, data: { click_action: 'FLUTTER_NOTIFICATION_CLICK', module_id: data.module_id, body: data.subtitle, title: data.title }, 'token': token[0].firebaseToken } let response = await admin.messaging().send(message)
Валерий
приложение в этот момент закрыто?
Валерий
а в приложении его обрабатываешь(показываешь)?
Nightwelf
оно в шторке не показывается когда приложение открыто?
Nightwelf
вот свернул и показываться стало
Nightwelf
как обычно, "вчера не работало"
Валерий
нет, за обработку пушей в foreground отвечает разработчик, в background система
Alex Kharechko
[
"да это просто недавно произошло после обновления флатера, до этого работало нормально ",
{
"type": "link",
"text": "https://github.com/henriquearthur/flutter_native_splash/issues"
},
""
]
Валерий
логика такова что если у тебя запущено приложение то показывать желательно inApp уведомления
Nightwelf
вчера я жестко тупил на эту тему
Tuum Daemonia
Добрый день. У меня есть BottomNavigationBar внутри которого разные странички. Как мне делать с этих страничек навигации на иные странички(которых нет в меню) так, чтобы все еще показывалось меню?
Tim
Всем привет! Кто нибудь сталкивался с необходимостью проводить А/В в Firebase только для новых пользователей? Как реализовывали?
Виталий Вивчар
фильтровать по versionCode & registrationDate
Tim
Версия - слабый показатель, а registrationDate - это что? Автоматически регистрируемое?
Tim
Я пробовал реализовать через добавление свойства пользователя, куда записывал timestamp первого запуска приложения и по нему фильтровать вот так: "set custom_first_open_time > 1581944923450"
Виталий Вивчар
versionCode - чтобы в тест попадали юзеры только с новым функционалом, где ваши новые фичи доступны, иначе тест не будет работать.
|