Surf Flutter Team – Telegram
Surf Flutter Team
3.13K subscribers
676 photos
54 videos
265 links
Комьюнити Flutter-разработчиков Surf.

🛠 Разработали решения для KFC, Росбанка и Medium Quality
📚 Делимся полезными материалами и обучаем стажёров

💬 Чат → https://news.1rj.ru/str/+aJbtJ4znXCBhOGIy

🧑🏻‍💻 Вакансии: career.surf.ru
📲 По вопросам @SurfAskBot
Download Telegram
Локализация по-новому

Поддержка языков системы в приложении у нас имеется и уже привычна. Поменяли в системе — поменялось в приложении, всё круто. Но с недавних пор в новых версиях iOS и Android появилась возможность задавать индивидуальные настройки локали для приложений:

🤖 Android: Settings ➡️ System ➡️ Languages & input ➡️ App Languages
🍏🤖 iOS и Android: App Settings ➡️ Language

Рассказываем, как это реализовать для наших приложений.

Ссылки из карточек:
🔵 Документация для Android
🔵 Документация для iOS

#экспертный
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍357🔥5
К нам пришло много новых людей — спасибо, что подписываетесь! Продолжаем развивать канал и хотим понять, что тебе интересно. Пожалуйста, ответь на несколько вопросов:

1. Какой у тебя грейд?
Anonymous Poll
16%
Стажёр
23%
Junior
38%
Middle
15%
Senior
7%
Team Lead / Tech Lead
1%
Headof
👍1👎1
Как управлять Java при помощи jenv

Иногда нужно использовать определённую версию Java для проекта — мы столкнулись с этим при работе над одним из Flutter-приложений. Решение нашлось в виде использования менеджера версий Java. В статье на Хабр рассказываем, что это за инструмент и как с ним базово работать на MacOS.

➡️ Читать по ссылке

#экспертный
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43
Добраться до строк

Продолжаем тему локализации. Сегодня рассмотрим три случая работы с локализованными строками в приложении:

→ Локализации ещё нет, и вы используете хардкод.

Расскажем, как сделать так, чтобы при подключении локализации ничего не забыть.

→ Локализация настроена.

Посмотрим, как удобнее всего добраться до неё через контекст.

→ Локализация вне контекста.

Покажем, как получить локализованные строки, если доступа к контексту нет.

#экспертный
🔥31👍15👎1
Возможности dart:async — Completer

Мы все хотим писать лаконичный асинхронный код, используя Future. Но иногда обстоятельства не на нашей стороне: нужно интегрировать плагин/библиотеку, которые предоставляют callback-based API.

К счастью, мы можем взять ситуацию в свои руки и очень просто преобразовать неудобные вызовы method((result) { … }) к привычным final result = await method().

Поможет в этом Completer. В карточках рассказываем, как это реализовать.

➡️ Документация по Completer

#экспертный
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32👍105👎2
Loose and tight constraints

Начинающим разработчикам знакома ситуация, когда виджет «игнорирует» переданные параметры — хотя размеры явно указаны. Вот мы указали явный размер для контейнера, ожидая получить квадрат 100х100:

MaterialApp(
home: Container(
width: 100,
height: 100,
color: Colors.red,
),
),

Но контейнер всё же растянется на весь экран. В карточках разобрали, почему так происходит.

Ссылки на DartPad:
🔵 Пример из поста
🔵 Как узнать ограничения
🔵 Изменяем ограничения
🔵 Устанавливаем свои ограничения
👍40🔥107❤‍🔥1