TGViewer
Flutter. Много Flutter. Много @flutter_amiga · 2.96K subscribers
Post #78 1.49K
Нативное view во Flutter

Hola, Amigos! С вами Антон Мартышков, Flutter-dev Amiga. Зачем используют нативное view во Flutter? Это удобно в тех случаях, когда есть готовое и проверенное решение под нативную платформу, а времени переделывать под Flutter не хватает. Легче показать Android activity напрямую в вашем Flutter-приложении. По такому принципу работают Google maps вo Flutter-приложениях.

В Android есть 2 способа отобразить нативный интерфейс:

1. Virtual displays — рендерит виджеты AndroidView внутри VirtualDisplays вместо того, чтобы добавлять их в иерархию View.

VirtualDisplay выводит свои выходные данные в необработанный графический буфер (доступ осуществляется через getSurface()), а не на какой-либо фактический дисплей устройства. Это позволяет Flutter чередовать представление Android View внутри своего собственного дерева виджетов. Он берет текстуру из выходных данных VirtualDisplay и обрабатывает ее как текстуру, которая связана с любым другим виджетом Flutter в его внутренней иерархии. Некоторые взаимодействия с платформой, такие как управление клавиатурой и специальные возможности, могут не работать.

2. Hybrid composition «прокидывает» нативный View в Fluttter.

Управление клавиатурой и доступность работают «из коробки». До Android 10 этот режим может снизить fps интерфейса Flutter. Но в документации команда Flutter подчеркивает — используйте AndroidView (Virtual displays) когда это возможно, поскольку для этого требуется меньше шаблонного кода, чем для AndroidViewSurface, и нет никакой разницы в производительности или других компромиссах.

В iOS есть возможность использовать только Hybrid composition. А виджет называется UiKitView.

Помните, что PatformView отвечает только за отображение, что бы еще подкрутить логику из натива нужно настроить общение между Flutte - native через MethodChannel, и там уже передавать данные и вызывать методы для изменения ui в нативном view. Такое решение в любом случае компромисс скорости реализации и производительности.
  • 🔥 12
  • 👍 5
More from @flutter_amiga
  1. Sep 9, 2026AI BOOST’26: выручка падает — что делают крупные digital-агентства и при чем здесь AI 22–2…
  2. Aug 18, 2026Hola, Amigos! На связи Павел Гершевич, Mobile Team Lead в Amiga. Сегодня посмотрим на чек-…
  3. Aug 13, 2026Hola, Amigos! Сегодня вышли Flutter 3.47 и Dart 3.13. Давайте вместе разберемся, что в них…
  4. Jul 31, 2026Дайджест июля Hola, Amigos! Собрали в одну подборку все полезные посты июля, которые вы мо…
  5. Jul 28, 2026Hola, Amigos! Сегодня посмотрим на один пакет, который может быть полезен в разработке - p…
  6. Jul 24, 2026Hola, Amigos! Сегодня мы вводим новую рубрику - обзоры правил для статического анализатора…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →