Программирование : Dart & Flutter по-русски
Олжас Сулеймен
олды пишут ручками ))
Gorohov Valeriy
Забей, не устраивай демагогию на посторонние тему. Мой вопрос заключался в автоимпорте экстеншенов, ответ : нет, не завезли.
Artyom Nesterenko
Ну так не вводите людей в заблуждение. ??
Gorohov Valeriy
Никто не запрещает, мне вот например не хочется помнить расположение нескольких сотен классов в большом проекте.
Max
Только потом сменив язык или IDE, вы не можете кодить спокойно
Gorohov Valeriy
Я могу, сменил в свое время не только языки но и платформы/технологии, начиная с микропроцессоров, до биг-дата и веб.
Max
Ну ладно ладно, удобно так удобно
Gorohov Valeriy
Писал и в блокнотах и в консоли. Только зачем лишний раз копать землю каменым топором когда есть экскаваторы.
Dmitry Zakharov
В блокноте
Олжас Сулеймен
пишу иногда в gedit
Олжас Сулеймен
если есть замечания по подсветке синтаксиса дарта в gtk gnome то сюда
Fearless Cry
Жалко икскод на уровне палки-копалки все еще
Fearless Cry
После андроид студии когда сажусь за икскод испытываю испанский стыд
Gorohov Valeriy
Это вкусовщина, я наоборот на VSC сел вместо студии, как раз из-за того, что привык к xcode.
Fearless Cry
Потому что и то и то в целом дубовое ??
Developer
[
"использую \n",
{
"type": "pre",
"text": "await dio.download(url, filename + \".mp3\");",
"language": ""
},
""
]
Developer
он делает запрос но не устанавливает на память
Fearless Cry
Что значит не устанавливает на память
Developer
[
{
"type": "pre",
"text": "onReceiveProgress: (progress, total){\n setState(() {\n downloading = true;\n progressString = (progress/total*100).toStringAsFixed(2) + \"%\";\n }",
"language": ""
},
","
]
Developer
это чтобы показывать прогресс установки
Developer
Он дошел до 100%
Developer
но в памяти нету
Developer
технически скачано
Fearless Cry
Ну так он не на диск качает
Fearless Cry
А в оперативу
Fearless Cry
Потом тебе надо сохранить вручную
Developer
я подключил свой телефон через usb debugging
Developer
а как сохранить в permanent storage?
Fearless Cry
Берешь массив байтов и сохраняешь
Developer
у вас найдется статья на эту тему?
Олжас Сулеймен
g[oogle] file writeBytes
Artem Shkryab
Кто-то юзает virtua box с хакинтошем? Не подключается айфон, кто-то сталкивался?
Daniil Kolyasnikov
Нужно перевести usb 3.0 в 2.0
Daniil Kolyasnikov
Ну и через меню connected device пробросить в виртуалку
Artem Shkryab
делал... я наверное не правильно выразился... айфон подключается к виртуалке..в списке девайсов он есть, но хакинтош не распознает девайс. Зарядка на телефоне идет, но не более.... небыло диалога в котором меня спрашивали доверяю ли я компу
Bola
а в vbox мак ос нормально работает? у меня жутко тормозил, пока не нашел vmware образ, там скорость приемлемая
Artem Shkryab
по скорости нормально, UI подтупливает....
Artem Shkryab
а в vmware у меня вообще зависал когда айфон подключал
Socrat
тупит, пока не было макбука поставил на железо mac os параллельно с виндой
Дмитрий Андриянов
[
"Есть ишью:\n1.\n",
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/44905"
},
"\n\n2.\n",
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/50713"
},
"\n\nСуть такова:\nПри использовании StreamBuilder и TextField + controller, если программно писать в controller - может происходить самопроизвольный скролл до этого поля.\n\nЧтобы этого избежать я манипулирую физикой, перед записью в контроллер ставлю в NeverScrollableScrollPhysics, после возвращаю обычную.\n\nКто-нибудь с этим сталкивался?\nЕсли да - то как решали?"
]
Developer
E/flutter (32513): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: FileSystemException: Cannot open file, path = 'Old Town Road - Lil Nas X, Billy Ray Cyrus.mp3' (OS Error: Read-only file system, errno = 30)
Developer
[
{
"type": "pre",
"text": "E/flutter (32513): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: FileSystemException: Cannot open file, path = 'Old Town Road - Lil Nas X, Billy Ray Cyrus.mp3' (OS Error: Read-only file system, errno = 30)",
"language": ""
}
]
Developer
Попробовал записать в байты после закачки в оперативку
Developer
Что можно сделать?
Developer
[
"Source:\n",
{
"type": "link",
"text": "https://gist.github.com/slightfoot/6f502205aca15e3cbf461df879673b56"
}
]
Вадим
Из минских пойдёт кто?
Вадим
[
{
"type": "text_link",
"text": "??",
"href": "https://telegra.ph/file/3114e3465ae12c7f85403.jpg"
},
"Даты: ",
{
"type": "bold",
"text": "3, 10, 17, 24 и 31 марта\n"
},
"Место: ",
{
"type": "bold",
"text": "Минск\n\n"
},
{
"type": "text_link",
"text": "Вечерний Флаттер\n\n",
"href": "https://www.facebook.com/groups/TheRollingScopes/"
},
"Серия из ",
{
"type": "bold",
"text": "ПЯТИ"
},
" воркшопов по Flutter пройдет в Минске. Целых пять мартовских вечеров Андрей Лесницкий (один из организаторов комьюнити Rolling Scopes и крутой спикер) будет лайв-кодить мобильные, десктопные и веб приложения на Flutter и, конечно, делиться секретами и отвечать вопросы. Регистрация на каждый из вечеров отдельная:\n\n",
{
"type": "text_link",
"text": "Вечерний Флаттер. 3-е марта.\n",
"href": "https://community-z.com/events/flutter-1"
},
{
"type": "text_link",
"text": "Вечерний Флаттер. 10-е марта.\n",
"href": "https://community-z.com/events/flutter-2"
},
{
"type": "text_link",
"text": "Вечерний Флаттер. 17-е марта.\n",
"href": "https://community-z.com/events/flutter-3"
},
{
"type": "text_link",
"text": "Вечерний Флаттер. 24-е марта.\n",
"href": "https://community-z.com/events/flutter-4"
},
{
"type": "text_link",
"text": "Вечерний Флаттер. 31-е марта.",
"href": "https://community-z.com/events/flutter-5"
},
""
]
Павел Середа
онлайн трансляции не будет чтоли?
Павел Середа
написано уже "МЕСТ НЕТ", куда регистрироваться ... непонятно ???>?
Вадим
Нет только на завтра
Andrey Davidov
Привет! Друзья, а черерз кого свежие вакансии на DartJobs публиковать? :)
Artem Zaitsev
[
{
"type": "mention",
"text": "@bunopus"
}
]
Evgeny Kot
Да, мне просто черканите текст
Юрий
Ребят, надеюсь на вашу помощь. Как отключить фокус, когда происходит навигация? Сейчас: делаю поисковый запрос, перехожу на следующее окно, возвращаюсь обратно - клавиатура снова выскакивает. Нужно: делаю поисковый запрос, перехожу на следующее окно, возвращаюсь обратно - фокуса на поиске не должно быть.
Юрий
Я знаю что можно отключить перед вызовом навигации, но хотелось бы чтобы это было по стандарту. А не каждый раз по новому прописывать логику.
Sergey
кто сталкивался с такой проблемой: есть купертино боттомтаббар, в двух закладках по экрану со сливер купертино навбаром, оба надо чтобы транзишились при переходах. В итоге получаю следующее: - ошибка same hero tags - указаны разные herotags но не работает транзишен нигде - работает транзишен только там где не указан herotag, остальные не работают что делать? может я не так юзаю herotags? сейчас плюнул и оставил один на главном экране без херотагов с транзишеном, на другом экране сказал чтобы нетранзишился, но хочу чтобы везде было норм
Dan
floatingActionButtons есть?
Sergey
- ошибка same hero tags - указаны разные herotags но не работает транзишен нигде - работает транзишен только там где не указан herotag, остальные не это все разные ситуации которые получилось добиться
Developer
[
{
"type": "pre",
"text": "Response response = await dio.download(url, filename)",
"language": ""
},
"\nКак можно записать response в битах?"
]
Developer
Скачиваю mp3 файл
Stanislav Sagan
[
"Здравствуйте, объясните что за дичь...\nПочему такой код закрывает AppDrawer (менюшка слева выезжает)\n",
{
"type": "code",
"text": "Navigator.pop(context)\n"
},
"А такой код может закрывает только странички\n",
{
"type": "code",
"text": "Navigator.popUntil(context, (route) => route.isFirst);\n"
},
"Вопрос как мне закрыть drawer и все остальное? Предусмотрен ли какой рабочий код ? Большое спасибо)"
]
Socrat
Navigator.of(context).pushReplacementNamed
Stanislav Sagan
А если у меня роуты не именованные ? Ну т.е. я только push/pop использую
Stanislav Sagan
[
"О, хотя, вот такой код вроде правльно отрабатывает))\n",
{
"type": "code",
"text": "Navigator.pushReplacementNamed(context, '/');\n\n"
},
"Буду тестировать)) Спасибо"
]
Socrat
это как вариант и закрыть как?
Socrat
почитай про навигацию
Socrat
pop удаляет push добавляет в стек и все производные от этого
Socrat
есть просто pushReplacemen если не именованные
Stanislav Sagan
[
"В общем мне нужно закрыть drawer если он открыт и не закрывать если он не закрыт) Но к сожалению это не работает\n",
{
"type": "code",
"text": "Navigator.popUntil(context, (route) => route.isFirst)\n"
},
"А это работает но как-то непоследовательно что ли.. что вызывает баги\n",
{
"type": "pre",
"text": "Navigator.pushReplacementNamed(context, '/');\n",
"language": ""
},
"Работает вот это, но это не универсальный код который я могу вызвать из любого контекста\n",
{
"type": "pre",
"text": "Navigator.pop(context)\n",
"language": ""
},
"Погуглил, нашел открытый баг (фича реквест) на то чтоб знать открыт drawer или нет\n\n",
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/43512"
},
""
]
Yuriy Musienko
[
"Вопрос по angulardart. \nПытаюсь прикрутить роутинг, делаю все по доке. В routes.dart импорчу темплейт компонента\n\nimport 'components/personal-account/personal_account.component.template.dart'\n as personal_account_template;\n\n\nНо при компиляции выдает ошибку\n\n",
{
"type": "code",
"text": "Please check the following imports:\n\nimport 'components/personal-account/personal_account.component.template.dart' as _ref1;\n\n"
},
"Как решать, кто шарит?)"
]
???????
С роутингом в ангуляр дарте все довольно хитро.
???????
Делай все как в Доке
???????
Обязательно соблюдай нейминг
???????
Тобишь если там оканчивается на Component, то и у тебя также должно быть
???????
Сделаешь все как в примерах - заработает. И еще раз: нейминг там важно.
Igor
Привет! Кто нибудь делал такой эффект?
?
[
{
"type": "link",
"text": "https://www.youtube.com/watch?v=R9C5KMJKluE"
}
]
Socrat
закинь что нибудь в initState() при открытии drawer, хотя есть же isDrawerOpen у скафолда??
Stanislav Sagan
Хм.. возможно в этом есть смысл) Но вообще флаттер блин неженка... что-то не так позакрываешь... Все к хренам ошибками посыпется
Artem Shkryab
Ребята, нужно открыть клавиатуру, стандартную, с буквами, но что бы она сразу была открыта в режиме ввода символов и цифр... есть идеи?
Vladimir
Всем привет, хотел бы получить инфомарцию о параметрах конструктора и многие пишут что это можно сделать через dart:mirror. Но у меня при подключении выпадает ошибка что такой либы нету и судя по странице FAQ дарта они отключили эту либу. Собственно вопорос как включить обратно?
neikist
Рефлексия в дарте в случае aot компиляции не поддерживается
Dan
у TextField вроде был параметр keyboardType
Pavel Pimenov
Да, numeric
Sergey
?? есть же запись экрана на афоне..........
Socrat
пока дуров не разорится на хранении данных
Gorohov Valeriy
Элементарные и средней тяжести вопросы спокойно гуглятся на английском. Тяжёлые на git. А в чатиках за элементарные назовут тебя мудаком, а тяжёлые проигнорируют
Socrat
да у нас тут золотая середина :)
Evgenii Elchev
Я помню времена когда задаёшь вопрос, первая ссылка на форум, а автора в Гугл отправляют. И так несколько первых ссылок гугла)
Dan
есть еще фотовопросы, типа хочу виджет как на картинке)
Artem Shkryab
Там только цифры...а нужна возможность переключиться на буквы
Stanislav Sagan
Аха.. ну да. Было такое.. но то Гугл был туповат))) Выдавал то место где пошлют))
Gorohov Valeriy
Где, этот чат? Я как бы по него и писал)
Pavel Pimenov
Изначально цифры, но на буквы можно переключиться. По крайней мере на андроиде точно
Stanislav Sagan
Не уверен что есть такое.. Но ты можешь попробовать сам сменить клавиатуру когда нужно начать вводить буквы после цифер
Socrat
надо чат мержить по хештегам на форум)
Pavel Pimenov
На флаттере вместо рефлексии можно использовать кодогенерацию. Вся мета-информация доступна в момент компиляции, и по ней можно сгенерировать необходимый код. Например, так сделан пакет json_serializable
Artem Shkryab
А спец символы ()-_+ ?
Developer
Есть аудио файл, как сделать setArtist?
Developer
или set Album photo
admin
может тупой вопрос, но как засунуть в Buttons() значение widgetHeight? сейчас просто ловлю ошибку 'Only static members can be accessed in initializers' (хочу построить логику относительно высоты текста )
admin
[
"class Example extends StatefulWidget {\n ",
{
"type": "mention",
"text": "@override"
},
"\n _ExampleState createState() => _ExampleState();\n}\nclass _ExampleState extends State {\n GlobalKey _widgetKey = GlobalKey();\n final RenderBox renderBoxWidget =\n _widgetKey.currentContext.findRenderObject();\n final widgetHeight = renderBoxWidget.size.height;\n print(\"Height of post: $widgetHeight\");\n ",
{
"type": "mention",
"text": "@override"
},
"\n Widget build(BuildContext context) {\n return Column(\n key: _widgetKey,\n children: [\n Text('dynamically changing text'),\n Buttons(<<<<>>>>),\n ],\n );\n }\n}"
]
Pavel Pimenov
Да, я ошибся, буквы нельзя
Artem Shkryab
видел на андроиде и на иост такоэ можна провернуть... пилят что бы и на флаттере так было... говорят если нельзя, дай ссылку где есть пруф что нельзя
Pavel Pimenov
Некоторые спецсимволы у меня можно, м.б. зависит от версии андроида
Vladimir
о спс пойду гляну что они там делают
Pavel Pimenov
А подожди, это у меня наверное не numeric, а phone
Pavel Pimenov
[
"Посмотри все типы\n",
{
"type": "link",
"text": "https://api.flutter.dev/flutter/services/TextInputType-class.html"
},
""
]
Socrat
[
{
"type": "link",
"text": "TextInputType.phone"
}
]
Artem Shkryab
а как на айфоне отображаеться, может кто-то скрин скинуть?
Artem Shkryab
угу, а буквы как ввести? они то нарисованы, а толку 0
Stanislav Sagan
О, спасибо.... я оказывается нумерик у себя повесил)))
Александр
Ребята, подскажите по Firebase. я когда создаю юзера, то сразу создаю коллекцию с данными. а как в нее потом добавит саб коллекцию? Future createUserInFirebase( {String name, bool isUser, }) async { return await userCollection.document(uid).setData( { 'name': name, 'isUser': isUser, "КАК вот тут созадть саб коллекци?" : a? }, ); }
Artem Shkryab
[\p{Cyrillic}\s'-`] есть вот такая регулярка, нужно еще запретить вводить цифры...подскажет кто-то?
Developer
как писать в ListTile после title и перед trailing?
???????
[
"Блиц вопрос, как писать в assert функции?\n",
{
"type": "pre",
"text": ": assert(\n (){\n // ...\n return true;\n }()\n",
"language": ""
},
"так?"
]
???????
Row в title?) Алсо, есть subtitle
Developer
Ошибка что title занимает весь widget
???????
Возможно expanded, а внутри уже row
Developer
Expanded > Row?
Pavel Pimenov
Без вызова () в конце вроде
???????
[
{
"type": "pre",
"text": "The expression in an assert must be of type 'bool'.\nTry changing the expression.dart(non_bool_expression)",
"language": ""
}
]
Developer
mainAxisAlignment: MainAxisAlignment.spaceBetween
Developer
Вставил вот это
Pavel Pimenov
[
"Да, моя ошибка, всё-таки нужны ()\n",
{
"type": "link",
"text": "https://github.com/flutter/flutter/blob/1d3fcfd6ca7e83c6c7d134fc99deb015839b0389/packages/flutter/lib/src/widgets/framework.dart#L142"
},
""
]
???????
Тобишь правильно сделал? Окей.
Pavel Pimenov
Но это чтобы в релизе этот код не вызывался
???????
Мне казалось, что там можно реально какт функцию вструмить специальным синтаксисом
???????
Ну эт понятно. Мне просто для чуть более хитрой проверки у конструктора
Яўген
Здравствуйте, были у кого проблемы с нижним TabBar, когда переключаешься и иконки мигают, будто заново подгружаются, как фиксить, подскажите пожалуйста?
Pavel Pimenov
А как реализованы иконки?
Александр
т.е. вот так вместе все не сделаешь?
Maxim
там плагин то Flutter для Adobe XD выпустили уже?
Developer
как добавить в свойства mp3 файла его артиста и фотку?
Developer
взять файл и редактировать эти свойства.
First Last
[
{
"type": "link",
"text": "https://www.online-tech-tips.com/free-software-downloads/mp3-metadata/"
}
]
Developer
теперь в flutter?
First Last
не понял чтото
Developer
это же программы
Developer
а какой код чтобы flutter это сделал?
First Last
[
{
"type": "link",
"text": "https://pub.dev/packages/id3"
}
]
First Last
посмотри в эту сторону и погугли id3 flutter
Developer
но он умеет только брать данные
First Last
да, но это то что я на вскидку нашел
Developer
[
{
"type": "link",
"text": "https://i.imgur.com/yWNkQMH.png"
}
]
Developer
[
{
"type": "link",
"text": "https://pub.dev/packages/audiotagger"
}
]
First Last
а зачем тебе это в краце?
First Last
менять теги это понятно, а для чего?
Developer
извиняюсь за поздний ответ
Developer
я просто делал музыкальный плеер
Developer
Подумал если я могу получить тэги, почему я не могу их set
Radomir Epur
Привет. Подскажите, пожалуйста, по поводу SharedPreferences. Сохраняет ли он значения в памяти? То есть, будут ли пользователю доступны данные после перезапуска приложения?
Pavel Pimenov
Да, и сохраняет на диск, и кеширует. После перезапуска всё сохранится – для этого он и нужен
Radomir Epur
Спасибо. В документации так и написано, но, видимо, я что-то неправильно делаю.
Pavel Pimenov
А что, не сохраняется?
Radomir Epur
Не-а. Но я ещё как следует не разобрался. Поковыряюсь ещё. Спасибо ещё раз
Developer
[
{
"type": "link",
"text": "https://i.imgur.com/XEiiw2D.png"
},
"\n\nКак вот это называется?"
]
Developer
типо как bottom navigation view
?
[
{
"type": "link",
"text": "https://www.youtube.com/watch?v=POtoEH-5l40"
}
]
Di
[
{
"type": "pre",
"text": "com.android.tools.idea.gradle.project.sync.ng.NewGradleSyncNotSupportedException: New Gradle Sync is not supported due to containing Kotlin modules\n> New Gradle Sync is not supported due to containing Kotlin modules",
"language": ""
},
"\nКто-нибудь встречался с такой ошибкой? Проект не может синхронизировать гредл"
]
Sergey Salnikov
[
{
"type": "link",
"text": "https://api.flutter.dev/flutter/services/WhitelistingTextInputFormatter-class.html"
}
]
Socrat
таргет версию выстави
Sergey
есть хоткей для VS code , аналог ctrl+p в AS, чтоб аргументы показывала для метода?
?
Ctrl + Space или Ctrl + Shift + Space
???????
Котаны, напомните, вроде в аналайзере можно включить, чтоб подсказывал места, которые можно сделать const Или мне приснилось?
NewBalanceM5
звучит как сказка
Evgenii Elchev
Я чет слышал в этом чате такое
???????
prefer_const_declarations
???????
prefer_const_constructors
???????
unnecessary_const
???????
вот в связке эти можно
???????
Вот хочу вспомнить, стоило сразу записать в правила, вот поленился, ленивая жепа
Кирилл Матросов
[
{
"type": "link",
"text": "https://github.com/dart-lang/pedantic/blob/master/lib/analysis_options.1.8.0.yaml"
},
"\nвозможные правила"
]
???????
[
{
"type": "pre",
"text": " prefer_const_declarations: true\n prefer_const_constructors: true",
"language": ""
},
"\nОфигенски\n\nprefer_const_constructors - сразу кучу вонингов поимел)"
]
Fearless Cry
но declarations полезнее намного мне кажется
Fearless Cry
с конструкторами и так понятно
|