Статья :: Dart & Flutter по-русски |
Программирование : Dart & Flutter по-русски
Vitaliy Snitko
Нет такого свойства..
Dmitry Demchenko
у Text, не у DropDownButton
Alex Abakumov
спсб за помощь пойду проверю
Vitaliy Snitko
А.. Который с лева от DropDownButton... ? Момент..
Dmitry Demchenko
почему же слева?) внутри него, где hint
Denis Kharlap
Всем привет Ребята, подскажите, есть ли какой-то best practice как поступать в случае, когда необходимо определить несколько виджетов похожих между собой? Наследование, как я понимаю, не очень подходит, какие еще могут быть варианты?
Vitaliy Snitko
А.. Сори.. Момент )
An
А попробуйте в isexpanded: true
Dmitry Demchenko
есть единый best practices на всю кодовую базу: composition over inheritance всё зависит от того насколько похожие виджеты и должны ли они изменяться при соответствующих изменениях у других похожих виджетов если прям "все-все" виджеты различаются мало и должны быть похожи на родителя - то наследование ваш выбор иначе - просто композиция похожих виджетов внутри "детей"
Vitaliy Snitko
?? Благодарю всех за участие! )))
Vitaliy Snitko
Наверное такой я гуглитель. Реально пару дней заморачивался... Столько всего нашёл попутно. А с этим отступом ну прямо затык.
Вася
[
"Всем привет. Делаю чат и столкнулся с проблемой скролла ListView. \n\nКейс:\nПользователь открыл диалог, где у него не прочитано много сообщений. То есть он может скроллить вниз и сообщения должны загружаться с сервера не мешая скроллу. \n\nПроблема: \nПри загрузке сообщений, индекс в ListView.builder изменяется и вместо текущего сообщения, на экране показывается последнее загрузившееся. То есть пользователя перебрасывает в самый низ во время скролла. \n\nЧто можно сделать?\n\nПример, как это выглядит в телеграмме: ",
{
"type": "link",
"text": "https://t.me/rudart/300000"
},
" во время скролла вниз, сообщения подгружаются. \n\nВо флаттере, при подгрузке, скролл уходит к последнему сообщению."
]
Denis Kharlap
Спасибо за ответ
Jake
[
{
"type": "link",
"text": "https://disk.yandex.kz/d/CIXbmMd64LPplw"
}
]
Daniil Razbitskiy
Уважаемые, можете подсказать, может кто делал, как сделать localhost не http а https? то вроде сделал и сертификат и 2 файла к нему, но что именно делать, чтоб был https так и не понял.
?
Делал по уроку с BLoC, и у меня не получается запустить приложение, видимо в новой версии DART'a что то поменялось. Как можно это решить?
Dima Kotlyarov
[
"ничего там в твоем случае не поменялось) ты же посмотри что ты параметр цвета пытаешься поместить! \nвыведи в принт ",
{
"type": "link",
"text": "snapshot.data"
},
" и увидишь, что ты вероятнее всего map а уже внутри map’a леит цвет"
]
Dima Kotlyarov
вероятнее всего будет в итоге что то типа такого snapshot.data.color
?
в уроке было именно так, а возвращается как раз конкретное значение цвета
Dima Kotlyarov
компилятор не знает что там приедет вероятнее всего)
?
[
"в print'e как раз ",
{
"type": "link",
"text": "snapshot.data"
},
" вывел. А вот код самого bloc'a"
]
?
да, вот в том и дело. Кажется в ранних версиях просто такой проверки со стороны компилятора не было, а теперь всё более "строго" похоже
Dima Kotlyarov
невалидный цвет у тебя там внутри
Dmitry Demchenko
Добавьте тип к стримбилдеру StreamBuilder
Dima Kotlyarov
нет нет извини это я типа про несоответствие ттипов
Dima Kotlyarov
[
"можно так типизировать! либо можно \nColor someColor = ",
{
"type": "link",
"text": "snapshot.data"
},
""
]
Халилилло
Всем привет! Как получить контекст вне класса buid? Cпасибо заранее за ответ!
Ivan
не знаете что за прикол, flutter pub get сам стал периодически запускаться
vladimir matylevich mr.fx
Привет, ребят , подскажите пожалуйста, я создал свой сервер на node.js (локальный сервер) порт 3000 создал апи при помощи express.js. Хочу подключить свое приложение flutter к своему серверу. так как сервер http а https дарт ругает меня. и не даёт мне ничего сделать, попробовал по https никаких проблем, можете что нибудь подсказать или объяснить как это работает? Зарание большое спасибо
Dima Kotlyarov
так это же круто))
Zlo77
Плохо когда он так не делает))
Volodymyr Medvediev
[
"Всем привет!\n\nЕсть TabBarView с одинаковыми виджетами, но подгружают они разный контент внутри себя\n\nПри изначальной подгрузке на первой табке данные по первой, на второй - по второй, но потом остаются данные только по второй табке\n\nДобавил ключи, чтоб флаттер различал виджеты, но это не помогло\n\n",
{
"type": "code",
"text": "class Charts extends StatelessWidget "
},
{
"type": "italic",
"text": "{\n "
},
{
"type": "code",
"text": "const Charts"
},
{
"type": "italic",
"text": "()"
},
{
"type": "code",
"text": ";\n\n @override\n Widget build"
},
{
"type": "italic",
"text": "("
},
{
"type": "code",
"text": "BuildContext context"
},
{
"type": "italic",
"text": ") {\n "
},
{
"type": "code",
"text": "return DefaultTabController"
},
{
"type": "italic",
"text": "(\n "
},
{
"type": "code",
"text": "length: 2,\n child: Scaffold"
},
{
"type": "italic",
"text": "(\n "
},
{
"type": "code",
"text": "appBar: AppBar"
},
{
"type": "italic",
"text": "(\n "
},
{
"type": "code",
"text": "title: const TabBar"
},
{
"type": "italic",
"text": "(\n "
},
{
"type": "code",
"text": "tabs: "
},
{
"type": "italic",
"text": "[\n "
},
{
"type": "code",
"text": "Tab"
},
{
"type": "italic",
"text": "("
},
{
"type": "code",
"text": "text: 'BTCUSD'"
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n Tab"
},
{
"type": "italic",
"text": "("
},
{
"type": "code",
"text": "text: 'ETHUSD'"
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n "
},
{
"type": "italic",
"text": "]"
},
{
"type": "code",
"text": ",\n "
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n "
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n body: const TabBarView"
},
{
"type": "italic",
"text": "(\n "
},
{
"type": "code",
"text": "children: "
},
{
"type": "italic",
"text": "[\n "
},
{
"type": "code",
"text": "ChartView"
},
{
"type": "italic",
"text": "(\n "
},
{
"type": "code",
"text": "key: Key"
},
{
"type": "italic",
"text": "("
},
{
"type": "code",
"text": "'BTCUSD'"
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n instrumentId: 'BTCUSD',\n "
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n ChartView"
},
{
"type": "italic",
"text": "(\n "
},
{
"type": "code",
"text": "key: Key"
},
{
"type": "italic",
"text": "("
},
{
"type": "code",
"text": "'ETHUSD'"
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n instrumentId: 'ETHUSD',\n "
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n "
},
{
"type": "italic",
"text": "]"
},
{
"type": "code",
"text": ",\n "
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n "
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ",\n "
},
{
"type": "italic",
"text": ")"
},
{
"type": "code",
"text": ";\n "
},
{
"type": "italic",
"text": "}\n}"
},
"\n\nЧто может быть не так?"
]
horse horssyyy
Гугли allow http, там надо в манифесте прописать что-то
horse horssyyy
Попробуй const Key...
Mansur Mansur
Кто может объяснить
Mansur Mansur
до этого создавал виджеты
Mansur Mansur
и никаких слов вроде required
Mansur Mansur
не было нужно
Mansur Mansur
сегодня создал новый проект
Mansur Mansur
без слово required и знака ? перед Key
Mansur Mansur
компилятор ругается
Maksim
Скорее всего перешёл на flutter 2 с null safety
Mansur Mansur
а как назад вкрнуться
Maksim
Загугли, но зачем? Новые проекты лучше писать на новой версии, чтобы потом проблем с поддержкой не возникло
Yakov K.
[
"Описание добавлено, спасибо :))\n\n",
{
"type": "link",
"text": "pub.dev/packages/mvu_flutter"
},
""
]
Yakov K.
Фидбек и лайки очень приветствуются, первое в особенности :) Очень интересует понятность/полнота, если каких-то моментов не хватает – был бы очень признателен если их укажите
Yakov K.
[
{
"type": "mention",
"text": "@terraideas"
},
" теперь большинство непонятнок должны быть разрешены :))"
]
Yevhenii
Почитаем, спасибо ??????
?
Что я делаю не так? Делаю по уроку, но видимо версии дарта расходятся, и видимо какие то изменения
Семён Колесников
Приветствую! ?? Возможно ли как-то переименовать виджет пакета? Например, поставил я пакет и там есть виджет "Wiget1", а я хочу переименовать в "Widget2". Кто-нибудь практиковал такое извращение?
Семён Колесников
Через f2 не дает(
IB Akhrorov
Через typedef или через refactoring в ide
Семён Колесников
Нее, я имею ввиду не свой код рефакторить - а прям в определении виджета пакета поменять названии
Семён Колесников
Залезть в определение этого виджета и там поменять название
?
Что я делаю не так? Делаю по уроку, но видимо версии дарта расходятся, и видимо какие то изменения
?
UserBloc просит добавить super() , но ранее такого делать не нужно было
?
да, уже решил. Это в новой версии flutter_bloc
Mansur Mansur
Кто сталкивался с работой flutter с блютуз
Mansur Mansur
Посоветуйте статью
Mansur Mansur
И какую библиотеку лучше юзать
Kirill Bubochkin
typedef, если дарт 2.13
Dmitry Demchenko
использовал flutter_reactive_ble для управления устройствами с телефона, работает отлично, в доке описано всё что нужно для работы как с блютузом так и с библиотекой
admin
Парни, зачем нужны приватные методы?
John Travolta
Для инкапсуляции данных внутри класса, извне не получишь доступ к ним
Serge Shkurko
[
"Почитай про инкапсуляцию\n\n",
{
"type": "link",
"text": "https://firststeps.ru/theory/oop/r.php?4"
},
""
]
Sergey
Привет! Не смотрел на дарт и флаттер с осени, много изменилась, где почитать?
Sergiy Vergun
Возможно ли сделать бэкап Hive db и загрузить в облако, а потом стягнуть?
John Travolta
Не очень много На официальном канале Ютуба их можно глянуть
John Travolta
Ну как вариант, вручную это сделать, пушнуть в облако данные)
Sergey
На null safety перешли или в процессе?
Alexandr
подобный урок делаю
Alexandr
в итоге ставлю аргумент
Roman
Нормально работают. Переписывал Пэт проект. На андройде jsoup юзал, на флаттере html..
?
[
{
"type": "link",
"text": "https://www.youtube.com/watch?v=eJY9NSq6zmM&list=PLtXyatp5fW30ksCelZf6Ny6YpqfzXMk9u&index=30"
}
]
Alexandr
я качал с торрентов от Udemy
Alexandr
[
{
"type": "link",
"text": "https://www.youtube.com/watch?v=sfwbSdffG9M&list=PLtXyatp5fW30ksCelZf6Ny6YpqfzXMk9u&index=25"
}
]
Alexandr
вот тут видимо сейчас объяснит подробно
Alexandr
[
{
"type": "link",
"text": "https://github.com/felangel/bloc/issues/1304"
}
]
Alexandr
тут само предложение о смене стиля
Mansur Mansur
Кто работал с flutter reactive ble
Kirill Aparin
[
{
"type": "mention",
"text": "@bunopus"
}
]
Макс Савчук
Кто парсил страницы чере webview?
Макс Савчук
Есть другие варианты?
Макс Савчук
Если есть пример, был бы признателен
Макс Савчук
Мне нужно страницу отображать на экране, но некоторые элементы видоизменить
e2 e4
заинджектить джс посмотри можно ли
Dinislam
Всем привет, какую архитектуру для проекта удобнее всего использовать? В гугле почти все старое, может завезли что то?
Yakov K.
[
"Бесстыже пихну свой ",
{
"type": "link",
"text": "pub.dev/packages/mvu_flutter"
},
" :))"
]
Семён undefined
он никому не зашел
Семён undefined
переделывай
Семён undefined
ну или не знаю там расширение сделай
Dinislam
Сейчас посмотрим
Yakov K.
все потому что стримы не использую!
Семён undefined
а ты их не используешь
Yakov K.
Надо было на кошерном блоке делать, пацаны бы заувожали, женщины в постель прыгали бы
Семён undefined
пиара нехватает
Семён undefined
нужно следовать правилам маркетинга
Семён undefined
видосы, картинки, красивый логотип
Yakov K.
Угу, буду скоро по платформам статьи раскидывать
Семён undefined
фишки от которых взрывается все
Yakov K.
камон, пакету три дня :)
Семён undefined
ну я делаю всё сразу
Yakov K.
Я за fail-first подход во всем
Yakov K.
Если без свистелок +- тракшн будет – можно полировать
Dinislam
А есть проект написанный на нем?
Yakov K.
Пока нет :) На днях 5 примеров загружу, но полноценного продакшн проекта пока нет
Dinislam
Хм, тогда пока не подходит
Yakov K.
Следующий в котором окажусь буду на нем делать :)
Dinislam
В закладки оставил, послежу
Dinislam
Так запарно с этим получилось у меня, базовые вещи через bloc делать куча кода
Dinislam
Все проекты которые чекал раздутые просто чтобы было
Yakov K.
Bloc действительно очень много кода требует
Yakov K.
С утра меня за это порвут, но блок – ридакс флаттера
Yakov K.
Тоже много кода, тоже каждый первый использует
Dinislam
Видимо надо свой делать, для мини приложений
Yakov K.
[
"Можете в сторону get_it_mixin посмотреть – он клевый: ",
{
"type": "link",
"text": "pub.dev/packages/get_it_mixin"
},
""
]
Yakov K.
Если глобальный стейт использовать аккуратно и привязывать жизненный цикл к определенным виджетам – проблем не будет
?
как с BLoC при запуске приложения грамотно проверять что пользователь авторизован или нет, и подавать ему соответствующую страницу?
?
Так же, через BlocProvider?
Viktor S
вот так например
Bekhzod Eshqo'ziev
из какой библиотеки лучше сфотографировать из галереи
Михаил
Хочу прикупить готовых UI элементов, кто-нибудь знает что-то нестыдное хорошее, может, тоже покупал что-то недавно ?
Михаил
[
"Думаю взять ",
{
"type": "link",
"text": "https://codecanyon.net/item/fluxstore-shopify-the-best-flutter-ecommerce-app/25877299"
},
" для екоммерса (там внутри должен быть ещё пример работы с graphql, раз shopify - пригодится) и нужен ещё кит с общеупотребительными вещами, тут не знаю что выбрать, на envato всё примерно средненькое какое-то."
]
Bolat
Нормально ли использовать shared preferences и sqlflite вместе? Просто а некоторых случаях мне нужно хранить обычные значения, так же нужно хранить списки
PTLam
[
"ребята, кто ползовался пакетом freezed подскажите как мне указать ",
{
"type": "mention",
"text": "@JsonKey"
},
"(ignore: true) к полю, чтобы исключить его.\n\nГенератор кода ругается, но не понимаю что он от меня хочет."
]
MiT
А теперь переведи ошибку, который генератор тебе выдал. Он не на JsonKey жалуется…
PTLam
ну по подсказке решается с указанием required или default, но если я это укажу, то поле будет включенно в методе fromJson. Мне надо его исключить вообще.
PTLam
[
"у меня стоит sdk: \">=2.12.0 <3.0.0\" с null safety, без null safety вот такая запись: ",
{
"type": "mention",
"text": "@JsonKey"
},
"(ignore: true) String id проходит"
]
MiT
Подсказка null safety и null
PTLam
[
"а, понял\nУказал так: ",
{
"type": "mention",
"text": "@JsonKey"
},
"(ignore: true) String? id\n\nзаработало) спасибо"
]
MiT
Не за что, правда, странно видеть id nullable…
PTLam
[
"там подключения с firebase, в тело документа нету айди. Я потом беру с ",
{
"type": "link",
"text": "doc.id"
},
" и вставляю в поле id"
]
Vladislav Rudenua
Написал flutter clean, потом собрался в дебаггере все работает
Vladislav Rudenua
Пытаюсь собрать апк
Vladislav Rudenua
И выдает ошибки
IB Akhrorov
Здравствуете Можете подсказать как получить density экрана?
Tosuj
Кто-то реализовывал oauth на флаттере? Можете опытом поделиться?
Pavel Kozlovskiy
MediaQuery.of(context).devicePixelRatio
Pavel Kozlovskiy
intl_translation + intl_utils
Вячеслав Кулинич
Подскажите clean architecture в связке с bloc
Pavel Kozlovskiy
[
"туториал и пример\n",
{
"type": "link",
"text": "https://github.com/ResoCoder/flutter-tdd-clean-architecture-course"
},
""
]
IB Akhrorov
Неправильно показывает
Mansur Mansur
Добрый день, кто работал с flutter reactive ble, есть какие нибудь статьи или часть кода скиньте
Oleg
Нужно смотреть ошибки в консоли У меня несколько проектов работают отлично
d
[
"так у них же на ",
{
"type": "link",
"text": "pub.dev"
},
" есть code сниппеты"
]
Oleg
А файлы с переводами названы так же en_US ?
Oleg
Попробуй перенести провайдер над MaterialApp может поможет
Gio
всем привет пуши через фсм приходят но почему то в фоновом режиме они без вибрации и звука в ios_permission прописывал чтобы звук и вибрация срабатывали кто-нибудь сталкивался с такой проблемой?
Pavel Kozlovskiy
А что в MyApp? Вот эта часть же тоже важна MaterialApp( localizationsDelegates: context.localizationDelegates, supportedLocales: context.supportedLocales, locale: context.locale,
Tagir
как это пофиксить? как будто не видит файлы проекта
Daniil Kolyasnikov
flutter pub get
Tagir
пробовал, ничего не меняется
Daniil Kolyasnikov
удали pubspec.lock и .packages
Roman
Вообще не работает? Или какой-то определенный элемент не парсит?
Roman
Ну скинь часть кода, если не приватное апи
Денис
кто нибудь знает как отключить автозапуск widget inspector, он открывается в полэкрана и следующие вкладки все на его стороне открываются
Daniil Kostin
Какие есть альтернативы истабагу подешевле или бесплатные?
d
не знаю как насчет дешевле но есть Sentry + Firebase Crashlytics
Daniil Kostin
[
"instabug стоит 145$",
{
"type": "bot_command",
"text": "/month"
},
""
]
Daniil Kostin
а там можно кружком на скриншоте обводить, что не так?
Алдияр Сахан
Как можно что бы не очистить textField, через контроллер textValue сделал, когда любой действие сделаю он очистит
Алдияр Сахан
А второй форма он без контроллер
Алдияр Сахан
Он наборот, когда нажимаю любой кнопка появится
Alexandr Drobyshev
кто то подключал по вайфай на маке андроид для отладки? правильно ли я понимаю что любой телефон на 11+ андриоде подойдет? прсото хочу купить чтоб не тыкать шнур, а то тут разьемы какие то хлипкие на мак 13. два млеких и зарядка и все остальное через них, боюсь сломать) а так удобно будет, но есть ли смысл купить а вдруг не работает на маках))
Yerassyl Maikhanov
Я пробовал у меня не вышло
Yerassyl Maikhanov
До сих пор тыкаю в мак
Владислав
Я пытался, ничего не получилось) Ну смотря на то, как долго это все на ios билдится и грузится на девайс - передумал, обложился проводами и норм)
Alexandr Drobyshev
ясно, спс
Dmitrij Kuznetsov
не уверен что сайт гугла так называется, помоему там не хватает .com
Mansur Mansur
в чем ошибка
Mansur Mansur
я не пойму, правильно ли я сканирую блютуз устройства
|
|
|