Программирование : Dart & Flutter по-русски
Дмитрий Костин
я про основы :)
Дмитрий Костин
про навалом я в курсе
Paul
Всем привет как можно сделать прокрутку как у телеграм, прокрутить список мемберов можно только когда главный скрол прокручен до конца вниз?(видео)
Andrew Ka
В сериале "Реализовал витрину товаров" вроде бы нсчинал с ней играться.
Pavel Pimenov
У PageView есть параметр viewportOffset вроде, который отвечает за то, какую часть экрана занимает элемент. Допустим, если поставить 0.2, то на экране поместится 5 элементов
Andrew Ka
[
"Вот тут магия ",
{
"type": "link",
"text": "https://github.com/comerc/minsk8/blob/master/lib/widgets/showcase/showcase.dart#L97"
},
""
]
Vyacheslav
попробую, спасибо
Vyacheslav
но, конечно, хотелось бы понять, почему инерция появляется
Илья Максименко
Точно не помню, но похоже на sliverscrollview
Pavel Pimenov
Если речь не о табах, а только о вертикальной прокрутке (сверху заголовок, снизу список) – это стандартный случай для CustomScrollView. Заголовок – в SliverToBoxAdapter, список – в SliverList
Pavel Pimenov
Плавная прокрутка происходит из-за animateTo. «Форма» анимации задаётся через curve
Vyacheslav
да, у меня была и linear и сейчас поставил fastOutSlowIn
Serg Bell
physics: ClampingScrollPhysics() - не отсюда ноги растут?.
Vyacheslav
но это только во вложенном листвью, такая физика
Pavel Pimenov
По идее, анимацию можно убрать, или ускорить, или изменить вид кривой
Anatoliy Razumov
Всем привет, подскажите, есть ли виджет для раскрывающегося поля, т.е. нажимаю на название и вниз раскрывается его подробное описание? Или это реализовать можно только через сет стейт размера окна доп информации?
Vyacheslav
по моим логам, получается на один свайп происходит 3 вызова метода для автопрокрутки, видимо нужно как-то ограничить
Pavel Pimenov
[
"Гугли ",
{
"type": "code",
"text": "flutter expandable"
},
" – есть и стандартные виджеты, и пакет"
]
Anatoliy Razumov
Спасибо огромное)
Yerassyl Maikhanov
Есть готовые виджеты и способ сделать самому
Yerassyl Maikhanov
Если текст то можно поискать в pub или самому сделать через анимировагнный контейнер
Anatoliy Razumov
Спасибо, уже нашел)
Александр
Кто нибудь знает что это такое ?
Александр
E/FlutterFcmService(19570): Fatal: failed to find callback
Александр
на iso все работает, на андроиде не хочет
Andrey Novatovski
Как сделать, чтобы текста красиво обрезалася, когда заходил бы за границы?
Andrey Novatovski
Типа: Какой-то те ...
Vyacheslav
надо в свойства текста добавить overflow: TextOverflow.ellipsis
Pavel Pimenov
ellipsis вроде умеет только целые слова отсекать
Pavel Pimenov
а дробить слово не умеет
Pavel Pimenov
[
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/18761"
}
]
Paul
Так заголовок не должен прокручиваться или я что-то не так делаю?
Pavel Pimenov
а, нужно, чтобы свёрнутый заголовок не скрывался?
Pavel Pimenov
тогда бери SliverAppbar вместо верхнего SliverToBoxAdapter
Andrew Ka
Я тыкнул Вам пальцем в нужное место ??
vassenin Sergey
Подскажите как работать с get и post
Paul
У меня так и ничего не получилось??
Pavel Pimenov
[
{
"type": "link",
"text": "https://flutter.dev/docs/cookbook/networking/fetch-data"
}
]
Maksim Chuguev
[
"Добрый день. Подскажите как определиться по архитектуре? просмотрел варианты ",
{
"type": "link",
"text": "https://fluttersamples.com/"
},
" тут. Хотелось бы услышать мнение экспертов на практике, чем удобнее работать"
]
tdesc
почитай чатик по архитектуре
tdesc
Flutter Architecture
tdesc
сильно зависит от того что делается
Vlad Pisatel
Ребята, всем привет! Есть интересный проект связанный с системами интерактивного обучения на 30 дней примерно. Команда есть, не хвататет одного хорошего Flutter-разработчика уровня "ранний мидл") Если мы сработаемся, проекты будем давать регулярно)
Vyacheslav
можно пальцем показать? не нахожу такого параметра
Vyacheslav
а стоп, нашел, в параметрах контроллера
Vlad Pisatel
Дайте ссылочку плз)
Anton Gauzer
Добрый день. Может кто подсказать, как реализовать выпадающий список, который берется из JSON текста, в котором два поля: код и само значение.
Олег Коротин
Ребят, кто-нибудь пользовался dio_http_cache? Просто мне нужно кэшировать сам файл и потом доставать путь к этому файлу, а он почему-то кэширует только содержимое файла
Denis
Добрый день. Ищу сенсея для онлайн консультаций по flutter. Во многих моментах не понимаю. Хочу сделать проект связанный с шахматами. Для себя
Vyacheslav
когда устанавливаю это свойство, первая карточка в центре экрана и слева остается пустое пространство... Как сделать ее в начале экрана?
Pavel Pimenov
Хм, а ты хочешь, чтобы её при этом и нельзя было сдвинуть в центр?
tdesc
[
{
"type": "mention",
"text": "@bunopus"
},
" нельзя ли на дарт джобс добавить правило по обязательному наличию вилки/оплаты? \nкакое то бессмысленное сейчас оно"
]
Vyacheslav
нет, хотел бы сделать как в обычном ListView но с возможностью позиционировать по центру, когда перелистывается
Vlad Pisatel
все слишком зависит от того, кто и на каких условиях к тебе придет
tdesc
в мобайл джобс нет с этим проблем
Evgeny Kot
Странно, но некоторые не хотят, типа "расширяют воронку". Но сейчас канал набрал жирку и можно ставить условия. В целом согласен
Pavel Pimenov
На самом деле, не встречался с такой задачей. М.б. есть какие-то параметры у PageView или контроллера
Игорь Кравченко
не хотят, потомучто хотят взять людей бесплатно)
Pavel Pimenov
Вообще «показывать с начала экрана, как в списке» и «центрировать» – теоретически противоречивые задачи
Pavel Pimenov
Если экран, допустим, вмещает четыре карточки
Vyacheslav
согласен, постараюсь объяснить заказчику))
Pavel Pimenov
То не получится выполнить оба условия сразу)
Valera
Всем привет) Подскажите как добавить сслыку на сайт к кнопке в таб баре? Чтобы выбрав допустим меню он перешел на сайт в раздел меню?
Roman Vasiliev
url_launcher
Pavel Pimenov
А чтобы по центру сразу был, скажем, третий элемент, и нельзя было сдвинуть назад – можно в контроллере установить начальную страницу, подписаться на изменения и запретить сдвиг куда не надо
Pavel Pimenov
Не знаю, хорошее ли это решение
Vyacheslav
ок подумаю, спасибо!
Pavel Pimenov
Либо смотреть исходники PageView и контроллера и делать по своему)
Andrew Ka
[
{
"type": "link",
"text": "https://youtu.be/AzKtA32OFvE"
}
]
Dart Flutter
народ подскажите а есть какая то плагин или либа для рефакторинга кода в vscod
Andrew Ka
[
{
"type": "link",
"text": "https://medium.com/flutter-community/flutter-visual-studio-code-shortcuts-for-fast-and-efficient-development-7235bc6c3b7d"
}
]
Олег Коротин
[
"Товарищи, у кого-нибудь был такой конфликт при flutter pub get: \n",
{
"type": "code",
"text": "Because every version of flutter_driver from sdk depends on file 6.0.0-nullsafety.1 and flutter_cache_manager >=1.2.0 depends on file ^5.1.0, flutter_driver from sdk is incompatible with flutter_cache_manager >=1.2.0.\nSo, because "
},
"app",
{
"type": "code",
"text": " depends on both flutter_cache_manager ^1.4.1 and flutter_driver any from sdk, version solving failed."
},
"???"
]
Олег Коротин
Всего лишь хотел подключить библиотеку flutter_cache_manager
Silent Bezmolvny
Я так понимаю, после необязательного параметра не может идти позиционный при объявлении метода?
Vladimir Ivanov
Ну так конфликт версии одной и той же зависимости
Олег Коротин
Это я понял, но как это исправить?
Vladimir Ivanov
найти версии, которые зависят от одних и тех же версий
Vladimir Ivanov
точнее, от диапазона
Vladimir Ivanov
даунгрейднуть какой-будь пакет
Егор Шепелев
[
"Нужно перехватить запрос от вебвью и подсунуть ему свой ответ. Никто не делал ничего подобного? Пользую inappwebview. Нашел только вяленькое обсуждение тут ",
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/27896"
},
""
]
Eldar
Мужики подскажите в table_calendar как убрать initialSelectedDay ? Чтоб изначально не была выбрана сегодняшняя дата
нуя
привет, насколько флаттер подходит для веба? знаю что поддержка есть, но с какими инструментами его обычно используют? на нем только фронтед пишут или логику тоже?
нуя
может есть толковый пример на гитхабе по которому можно учиться...
нуя
у меня только в верстке есть опыт, решаю учиться дальше на флаттере или го - хочу делать и мобильные приложения, и сайты
Павел Середа
логика это что? бекенд? Бекенд лучше делать другими средствами. Исключительно для веба флаттер "тяжеловат", другое дело если основное это мобилки, тогда веб сгодится лишь как дополнительный UI, используют с figma. Примеров готовых приложений придостаточно, а вот веб-сайтов мало
Павел Середа
выбирай го или C# для бекенда
нуя
спасибо, об этом и думал
Павел Середа
там есть следующая строка в примере: _selectedEvents = _events[_selectedDay] ?? [];
Павел Середа
вот задай _selectedEvents = [];
Eldar
сегодняшняя дата все равно заселекчена по дефолту
tdesc
все зависит от ваших задач. flutter for web пока для десктоп задач широкого профиля не готов
tdesc
с моб вебом попроще
Денис
[
"Народ кто с angular dart работает) если на ",
{
"type": "link",
"text": "pub.dev"
},
" указано web это flutter web или на ангуларе будет работать?"
]
Павел Середа
думаю в первую очередь это flutter web
Никита
Привет всем. Создал виджет, множу его. На каждый виджет можно нажать, в консоль выводит текст. Подскажите, как у каждого виджета менять цвет? Чтоб менялся не у всех разом, а только на кого нажал
Павел Середа
ищите свойство color
Никита
делаю, но меняется у всех
Никита
может не так множу
Никита
[
{
"type": "pre",
"text": " for (var numb in _numbers) numbers(numb),",
"language": ""
}
]
Никита
[
{
"type": "pre",
"text": " Widget numbers(numb) {\n return AbsorbPointer(\n absorbing: _disable,\n child: GestureDetector(\n onTap: () {\n setState(() {\n _numbArray.add(numb);\n _pinsFull.removeLast();\n\n if (_numbArray.last == numb) {\n // _color = false;\n // print(_numbArray.last);\n }\n // print(numb);\n });\n },\n child: Container(\n width: 80,\n height: 80,\n margin: EdgeInsets.only(bottom: 20),\n alignment: Alignment.center,\n decoration: BoxDecoration(\n // color: Colors.white10,\n borderRadius: BorderRadius.all(Radius.circular(50)),\n ),\n child: Text(\n numb.toString(),\n style: AppStyles.p.copyWith(\n fontWeight: FontWeight.bold,\n fontSize: 24,\n color: _color ? AppColors.white : AppColors.likeRed,\n ),\n ),\n ),\n ),\n );\n }",
"language": ""
}
]
Stepan
Тебе нужно у конкретного элемента по индексу это менять
Никита
я это понимаю, но не понимаю как сделать((
Stepan
Ребят, а svg во флаттере можно использовать как обычные картинки или как-то по-другому нужно?
Демидовец Николай
Добрый день чтобы установить цвет в панели навигации внизу нужно использовать этот код: SystemUiOverlayStyle( systemNavigationBarColor: Colors.white ) а как получить текущее значение цвета?
les forest
создай массив с колорами) длина этого массива должна равнятся количеству твоих виджетов
les forest
при клике на виджет меняй цвет в массиве с цветами по сооитветствующему индексу
Stepan
Можно вынести виджет в отдельный класс, и чтоб этот кастомный виджет имел свойство Id. В цикле создаёшь виджеты уже с айдишниками. Так же, тебе нужна функция onTap, которая будет принимать айди элемента и в сэтстэйте уже менять его цвет
Никита
я как сделать, что у каждого менялось свое состояние?
les forest
после смены стейта все твои виджеты перерисуются
les forest
в цикле создавай свои виджеты и присваивай им цвет по индексу из массива с цветами
Никита
у меня два цвета. И нужно активный цвет добавлять на несколько секунд.
Никита
Зачем еще массив, не понимаю.
Никита
К примеру отрисовалось 9 виджетов. И у каждого же есть свое состояние
Никита
как в js могу же обратится к this
Никита
а как тут так сделать
Никита
здесь есть context, вот как бы от него оттолкунться
Олжас Сулеймен
вынеси в statefull, делов то
????? ILyos >
Полученный данные передаю здесь но кружится ProgressIndecator()
????? ILyos >
А тут не вводится на экран
????? ILyos >
Немогу понять в чем дело эррора нет
Maxim Gora
ретурна нет или как?
Олжас Сулеймен
где return виджет в пустоту создаешь?
????? ILyos >
а где оно должно быть? ??
Serg Bell
.getData() что возвращает
????? ILyos >
[
{
"type": "link",
"text": "https://gist.github.com/hacker-uz/7c60f6290864524cd5708072a009ccb4"
}
]
Serg Bell
filmFromJson эт где
????? ILyos >
да его забил добавит. добавил и его
Serg Bell
всио уже заработало сам разобрался?.
????? ILyos >
нет я о том что в гист добавил модал класс где filmFromJson есть
Никита
так и стоит statefull
Stepan
Я так понимаю, что есть либа, но там тоже нужно сначала их регистрировать
Stepan
а без регистрации нельзя? Просто у меня несколько десятков svg иконок...
Stepan
мы же использует класс Icons без регистрации. Мб можно сделать что-то подобное?
Stepan
только что попробовал, он ужасно сконвертировал мои цветные иконки
Stepan
походу, придется все ручками)
Serg Bell
flutter_svg: ^0.18.0, а svg в assets
Aleksandr
apple pay в эмуляторе запускает api apple pay, а на реальном устройстве через тестфлай не работает. Как понимаю наверное не хватает настроек в plist. ни кто не подскажет в чем проблема может быть?
MiT
[
{
"type": "link",
"text": "https://developer.apple.com/documentation/passkit/apple_pay/setting_up_apple_pay_requirements"
}
]
Никита
[
{
"type": "pre",
"text": " Container(\n width: double.infinity,\n constraints: BoxConstraints(maxWidth: 330),\n padding: EdgeInsets.all(20),\n decoration: BoxDecoration(\n color: AppColors.bg,\n borderRadius: BorderRadius.all(Radius.circular(20)),\n ),\n child: ListView.builder(\n itemCount: 10,\n itemBuilder: (BuildContext context, int index) {\n return Column(children: [\n Text('gggg'),\n ]);\n }),\n ),",
"language": ""
},
"\nне выводит билдер. Ошибка. \nне пойму почему?"
]
Никита
[
"вот полный код\n",
{
"type": "pre",
"text": "Column(\n mainAxisAlignment: MainAxisAlignment.spaceEvenly,\n children: [\n Column(\n children: [\n Align(\n child: Text(\n 'Установить пин код',\n style: AppStyles.p,\n ),\n ),\n Container(\n constraints: BoxConstraints(maxWidth: 160),\n margin: EdgeInsets.only(top: 25, bottom: 30),\n child: Row(\n mainAxisAlignment: MainAxisAlignment.spaceBetween,\n children: [\n for (var i = 0; i < _numbArray.length; i++) aroundsRed(),\n for (var i = 0; i < _pinsFull.length; i++) aroundsWhite(),\n ],\n ),\n ),\n ],\n ),\n Container(\n width: double.infinity,\n constraints: BoxConstraints(maxWidth: 330),\n padding: EdgeInsets.all(20),\n decoration: BoxDecoration(\n color: AppColors.bg,\n borderRadius: BorderRadius.all(Radius.circular(20)),\n ),\n child: ListView.builder(\n itemCount: 10,\n itemBuilder: (BuildContext context, int index) {\n return Column(children: [\n Text('gggg'),\n ]);\n }),\n ),\n // GestureDetector(\n // onTap: () {\n // Navigator.push(context,\n // MaterialPageRoute(builder: (context) => SettingsPage()));\n // },\n // child: buttons('Пропустить'),\n // ),\n ],\n ),",
"language": ""
},
""
]
Stepan
а какая ошибка-то?
Stepan
работает, просто у меня 26 иконок и все вручную нужно писать непонятно, что делать, если было бы 100 иконок или больше
Stepan
очень неприятно было бы
Aleksandr
в xcode не настраивал. даже не подумал, ь. к. с эмулятора запустился) спасибо, буду пробовать)
Serg Bell
что имеешь в виду - в ручную?.
Stepan
попробуй обернуть в экспандед контейнер
Serg Bell
в смысле я не понял, что значит "в ручную"))
Stepan
хз, я в таких случаях все по очереди оборачиваю в expanded))
Stepan
прописывать assets в yaml файле
Kirill Aparin
Я тут не могу при нажатии кнопки назад выйти с главного экрана вообще из приложения, могу ли я как-то отслеживать нажатие системной кнопки back? Приложение не моё и кода тут действительно много
Kirill Aparin
Хочу отследить нажатие кнопки и насильно выкидывать из приложения
Kirill Aparin
[
{
"type": "pre",
"text": "onWillPop: () async {\n SystemNavigator.pop();\n },",
"language": ""
}
]
Kirill Aparin
Я что-то не так сделал?
Andreu
А так получается ты просто вызвал pop(), да и все
Kirill Aparin
И живу спокойно)
Kirill Aparin
Вроде работает, только вот этот warning
Andreu
Ты не читаешь вообще что я тебе написал? return Malala.pop()
4??uzhoy .
у тебя .pop() возвращает фьючу булеву
Andreu
Тебе собственно и асинк не нужен, по логике
Kirill Aparin
Теперь понял
Maks Andrienko
подскажи, а как мне экспортировать зашифрованный ключ из студии для подписи приложения в консоли гугла как это делать на простом проекте андроида я знаю, но на фалттере конпка сгенерироват подписанный набор заблокирована(
Serg Bell
папкой кидай, в pubspeck ссыль на папку, а уже в коде - по имени к файлу, и всио
Maks Andrienko
если точнее, то я говорю про это
Stepan
Так можно что ли?? А я 26 строк прописал, класс
Serg Bell
[
"офишиал документейшн))\n",
{
"type": "link",
"text": "https://flutter.dev/docs/development/ui/assets-and-images"
},
""
]
Stepan
Блен, ленивая жопа которая смотрит видосики вместо чтения документации... Ладно, спасибо)
Daniil Kostin
Есть какой-то способ добавить то, что не хватает в TextStyle? TextStyle(parent, TextStyle(decoration:))
Daniil Kostin
Спасибо!!! Уже давно не хватет
Daniil Kostin
Мне именно это и надо было :)
Ivan Pavlov
[
"Есть специалисты в SQLite?\nВот такой строкой создаю две таблицы:\n",
{
"type": "code",
"text": "CREATE TABLE employee(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, surname TEXT, patronymic TEXT, birthday TEXT, position TEXT);\nCREATE TABLE children(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, surname TEXT, patronymic TEXT, birthday TEXT, parentId INTEGER,FOREIGN KEY(parentId) REFERENCES employee(id) ON UPDATE CASCADE ON DELETE CASCADE);\nCREATE INDEX childrenindex ON children(parentId);\n"
},
"Но при запросе ",
{
"type": "code",
"text": "db.query()"
},
" выдаёт ошибку: ",
{
"type": "bold",
"text": "(1) no such table: children"
},
": ",
{
"type": "code",
"text": "DatabaseException(no such table: children (code 1 SQLITE_ERROR): , while compiling: \nSELECT id, name, surname, patronymic, birthday, parentId FROM children)\nsql 'SELECT id, name, surname, patronymic, birthday, parentId FROM children' args []}\n"
},
"Хотя в строках везде использованы константы с внесёнными строками."
]
Muso Verda
привет всем ) подскажите новичку - что за странность?
Muso Verda
оба плагина установлены вроде?
4??uzhoy .
он ще и версию АС неправильно определил
4??uzhoy .
у тебя она там одна на машине стоит ?
Muso Verda
да - через snap
4??uzhoy .
а, не, это я втупил
Alexander Krause
Господа, ответьте, пожалуйста, как быть? Мне нужно по новой устанавливать flutter или есть другой способ решения данной проблемы?
SM
Панюшкина! Привет!! O?
Valentina Panyushkina
Всем привет! ??
Kirill Aparin
Оооо, Панюшкина, привеет!
|