Анализ страницы https://docs.flutter.dev/ui/widgets/cupertino
Основное Готовность: 100%
Домен
docs.flutter.dev
Состояние доменного имени
?
Проверяем корректность доменного имени и наличие технических проблем на уровне домена.
Используйте для продвижения только домен второго уровня.
Длина домена велика. Но если вы продвигаете запрос, входящий в название домена, то это хорошо.
Ответ сервера
200 Успешный ответ
HTTP-код ответа и цепочка редиректов
?
Код 200 — страница доступна. Коды 3xx — редиректы (цепочки замедляют загрузку и размывают ссылочный вес). Коды 4xx/5xx — ошибки, поисковик не сможет проиндексировать страницу.
Сервер настроен корректно.
Безопасность
Сайт безопасен
Использование HTTPS и SSL-сертификат
?
HTTPS — обязательный стандарт. Google и Яндекс отдают предпочтение защищённым сайтам. Отсутствие SSL или просроченный сертификат ведут к предупреждениям в браузере и снижению позиций.
На сайте работает защищенный протокол ssl и сайт открывается по https.
Ssl-сертификат действителен до 07.10.2026 1:22:15.
Сервер поддерживает HTTP/3 (QUIC) — новейший протокол.
Включён HSTS (Strict-Transport-Security) — защита от подмены на http.
Поздравляем! Сайт не содержится в реестре РКН.
Кодировка
utf-8
Кодировка символов страницы
?
Стандарт — UTF-8. Неправильная кодировка вызывает нечитаемые символы и мешает поисковику корректно распознать текст страницы.
Указана кодировка на странице utf-8.
Язык
en
Атрибут lang в HTML-теге
?
Атрибут lang (<html lang="ru">) сообщает поисковикам и браузерам, на каком языке написана страница. Помогает при ранжировании в региональном поиске.
Язык документа указан явно: en.
Скорость загрузки
~0,45сек
Время отклика сервера (TTFB)
?
Time To First Byte — время до получения первого байта от сервера. Норма до 200 мс. Медленный отклик ухудшает пользовательский опыт и ранжирование: Яндекс и Google учитывают скорость страниц.
Скорость загрузки сайта 0,45сек оптимальна.
Объем документа
164Кб
Размер HTML-кода страницы
?
Слишком большой HTML замедляет парсинг браузером и сканирование поисковым роботом. Рекомендуется не более 200 Кб.
Объем html-документа 164Кб оптимален.
Структура html-документа корректна.
Ресурсы
Ресурсы: 5
Внешние ресурсы страницы (CSS, JS, изображения)
?
Количество и тип подключённых ресурсов влияют на скорость загрузки. Большое число запросов увеличивает время рендеринга страницы.
Кол-во файлов ресурсов 5 достаточно.
Показать полный список ресурсов
| Тип | Название | Значение |
|---|---|---|
| stylesheet | https://fonts.googleapis.com/css2?family=Google+Sans+Flex:opsz,wght@6..72,400..700&family=Google+Sans+Code:ital,wght@0,400..700;1,400..700&display=swap | |
| stylesheet | https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0..1,0 | |
| stylesheet | /assets/css/main.css?hash=2aBdF8TEn93e | |
| js | module | https://cdn.jsdelivr.net/npm/@justinribeiro/lite-youtube@1.8.2/lite-youtube.js |
| js | /main.client.dart.js |
Серверные заголовки
Кол-во: 13
HTTP-заголовки ответа сервера
?
Заголовки сервера передают браузеру и поисковику служебную информацию: кеширование, безопасность (CSP, HSTS), сжатие (gzip). Правильная настройка ускоряет загрузку и повышает защищённость.
Найдены серверные заголовки 13шт. Подробнее про серверные заголовки.
Показать полный список серверных заголовков
| Ключ | Значение |
|---|---|
| Cache-Control | max-age=3600 |
| ETag | "ce227c8eeabc1d08a50181bc23c4f25c47a27b24b2597157b606a501001c077b" |
| Referrer-Policy | strict-origin-when-cross-origin |
| Strict-Transport-Security | max-age=31556926 |
| X-Content-Type-Options | nosniff |
| Accept-Ranges | bytes |
| Date | Sun, 23 Aug 2026 06:42:11 GMT |
| X-Served-By | cache-bma-essb1270031-BMA |
| X-Cache | MISS |
| x-cache-hits | 0 |
| x-timer | S1787467331.726641,VS0,VE298 |
| Vary | x-fh-requested-host |
| Alt-Svc | h3=":443" |
CMS
Не определена
Система управления сайтом (движок)
?
CMS — это движок, на котором работает сайт (WordPress, 1C-Bitrix, Tilda и др.). Знание CMS помогает понять возможности SEO-оптимизации и подобрать подходящие инструменты. «Не определена» — вероятно, самописный сайт или нестандартная сборка.
CMS не определена. Вероятно, сайт самописный либо движок надёжно скрыт. Это не ошибка.
Веб-сервер
Не определён
Программное обеспечение сервера
?
Веб-сервер — это ПО, которое отдаёт страницы посетителям (nginx, Apache, IIS, LiteSpeed и др.). Определяется по серверным заголовкам ответа (Server, X-Powered-By и т.п.). «Не определён» — сервер намеренно скрывает эти заголовки, это нормальная практика безопасности.
Веб-сервер не определён — заголовок Server скрыт. Это не ошибка: часто так настраивают из соображений безопасности.
Мета-теги Готовность: 48%
Title
Cupertino widgets
Заголовок страницы в браузере и поисковой выдаче
?
Title — главный SEO-заголовок страницы. Влияет на CTR в поиске и ранжирование. Оптимальная длина: 50–70 символов. Ключевые слова — ближе к началу.
Необходимо увеличить число символов в title (текущее значение мало: 17, минимум: 25, оптимально: от 40 до 45)
Дублей словоформ в title не найдено.
Description
A catalog of Flutter's cupertino widgets. Beautiful and high-fidelity widgets that align with Apple's Human Interface Guidelines for iOS and macOS.
Описание страницы в поисковой выдаче (сниппет)
?
Meta Description — текст под заголовком в выдаче. Напрямую на позиции не влияет, но влияет на CTR. Оптимальная длина: 120–160 символов.
Необходимо уменьшить число символов в description (текущее значение: 147, оптимально: от 120 до 130)
Keywords
Список ключевых слов страницы (устаревший тег)
?
Meta Keywords не учитывается Яндексом и Google для ранжирования с 2009–2012 годов. Заполнение не обязательно, но не вредит. Конкурент может использовать содержимое для анализа.
Установите мета-тег keywords!
Канонический Url
https://docs.flutter.dev/ui/widgets/cupertino
Указывает поисковику основную версию страницы
?
Canonical (rel=canonical) предотвращает проблему дублей страниц. Должен точно совпадать с URL проверяемой страницы. Неправильный canonical может передать ссылочный вес на другую страницу.
Канонический Url прописан корректно.
Robots
Ошибок нет
Директивы для поисковых роботов на уровне страницы
?
Meta Robots управляет индексацией конкретной страницы: index/noindex — индексировать ли, follow/nofollow — следовать ли по ссылкам. Noindex полностью исключает страницу из поиска.
Meta-тег robots не указан. Страница свободна для индексации.
Адаптивность
width=device-width, initial-scale=1
Настройка масштабирования на мобильных устройствах
?
Тег viewport (<meta name="viewport">) сообщает браузеру, как масштабировать страницу на мобильных. Стандарт: width=device-width, initial-scale=1. Отсутствие — признак отсутствия мобильной версии.
Meta-тег viewport со значением-константой width=device-width задаёт ширину страницы в соответствии с размером экрана.
Meta-тег viewport со значением initial-scale=1.0 определяет масштаб 1:1, т.е. «не масштабировать».
Разметка OpenGraph
Кол-во: 4
Мета-теги для красивых превью в соцсетях
?
OpenGraph (og:title, og:description, og:image) управляет тем, как страница выглядит при репосте в социальных сетях и мессенджерах. Отсутствие OG-тегов — невзрачный превью при шеринге.
Разметка OpenGraph задана. Страница оптимизирована под социальные сети.
Показать полный список og мета-тегов
| Тип | Значение |
|---|---|
| og:title | Cupertino widgets |
| og:description | A catalog of Flutter's cupertino widgets. Beautiful and high-fidelity widgets that align with Apple's Human Interface Guidelines for iOS and macOS. |
| og:url | https://docs.flutter.dev/ui/widgets/cupertino |
| og:image | https://docs.flutter.dev/assets/images/flutter-logo-sharing.png |
Все мета-теги
Кол-во: 12
Полный список мета-тегов страницы
?
Таблица всех meta-тегов, включая нестандартные. Позволяет найти опечатки, дубли и лишние теги.
Найдены мета-теги 12шт. Мета-теги не видимы для человека и предназначены для обмена информацией между веб-страницей и поисковыми системами, браузерами и другими веб-службами. С ними роботы 🤖 и устройства ведут себя более ожидаемо.
Показать полный список мета-тегов
| Тип | Название | Значение |
|---|---|---|
| name | viewport | width=device-width, initial-scale=1 |
| name | description | A catalog of Flutter's cupertino widgets. Beautiful and high-fidelity widgets that align with Apple's Human Interface Guidelines for iOS and macOS. |
| name | twitter:card | summary |
| name | twitter:site | @flutterdev |
| name | twitter:title | Cupertino widgets |
| name | twitter:description | A catalog of Flutter's cupertino widgets. Beautiful and high-fidelity widgets that align with Apple's Human Interface Guidelines for iOS and macOS. |
| name | twitter:image | https://docs.flutter.dev/assets/images/flutter-logo-sharing.png |
| name | google-site-verification | HFqxhSbf9YA_0rBglNLzDiWnrHiK_w4cqDh2YD2GEY4 |
| property | og:title | Cupertino widgets |
| property | og:description | A catalog of Flutter's cupertino widgets. Beautiful and high-fidelity widgets that align with Apple's Human Interface Guidelines for iOS and macOS. |
| property | og:url | https://docs.flutter.dev/ui/widgets/cupertino |
| property | og:image | https://docs.flutter.dev/assets/images/flutter-logo-sharing.png |
Оптимизация Готовность: 50%
Структура
Ошибок нет
Семантические HTML-элементы страницы
?
Проверяет наличие основных структурных элементов: nav, header, footer, main. Корректная семантическая структура помогает поисковику понять архитектуру страницы.
Структура документа корректна (теги <html> и <body> присутствуют по одному на документ).
Контент
Есть ошибки
Объём и качество текстового содержимого
?
Анализирует объём полезного текста на странице. Слишком мало — страница может считаться малополезной. Слишком много — ухудшается читаемость и восприятие.
Слова из title 2 встречаются в тексте редко. Добавьте в контент страницы слова из тега <title>!
Абзацев с текстом 67 достаточно.
Среднее число слов в абзаце 18 достаточно.
Кол-во знаков контента 16662 на странице оптимально.
Кол-во слов 2391 на странице оптимально.
Заголовки
Ошибок нет
Иерархия заголовков H1–H6
?
H1 должен быть один и содержать ключевой запрос. H2–H6 описывают подразделы. Пропуск уровней (H1 → H3) и несколько H1 — типичные ошибки, снижающие понятность страницы для поисковика.
На странице присутствуют заголовки <h1> 1. Это прекрасно.
Тошнота
8,54
Насколько одно слово доминирует в тексте
?
Классическая тошнота = √(частота самого повторяющегося слова). Норма до 7–8: текст воспринимается естественно. Выше — поисковик может счесть страницу переспамленной.
Тошнота превышает норму 5. Измените текст страницы!
Академич. тошнота
25,14%
Насколько текст перенасыщен ключевыми словами
?
Академическая тошнота = (частота слова / общее количество слов) × 100%. Показывает долю конкретного слова в тексте. Норма 5–15%.
Академическая тошнота превышает норму 5-15%. Измените текст страницы!
Семантическое ядро
20
Наиболее часто встречающиеся слова на странице
?
Топ слов по частоте использования. Показывает, какие слова доминируют в тексте с точки зрения поисковика.
Контент страницы содержит осмысленный текст и слова.
Показать список слов
| Слово | Кол-во | Частота |
|---|---|---|
| cupertino | 73 | 3,05% |
| expand_more | 66 | 2,76% |
| flutter | 50 | 2,09% |
| open_in_new | 25 | 1,05% |
| overview | 23 | 0,96% |
| ios-style | 23 | 0,96% |
| selection | 18 | 0,75% |
| create | 13 | 0,54% |
| android | 13 | 0,54% |
| button | 13 | 0,54% |
| introduction | 12 | 0,50% |
| screen | 12 | 0,50% |
| widgets | 11 | 0,46% |
| toolbar | 10 | 0,42% |
| content | 9 | 0,38% |
| widget | 9 | 0,38% |
| performance | 9 | 0,38% |
| release | 8 | 0,33% |
| action | 8 | 0,33% |
| dialog | 8 | 0,33% |
Индексация Готовность: 0%
Индексирование
Есть ошибки
Разрешено ли индексирование страницы
?
Проверяет, не закрыта ли страница от индексации через robots.txt, meta robots или X-Robots-Tag. Страница, закрытая от индексации, не появится в поисковой выдаче.
Анкоров на странице 447 слишком много. Проведите ревизию и оптимизацию ссылок сайта.
Robots.txt
Найден корректный robots.txt
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Robots.txt настроен корректно. Размер файла: 71 байт. Загружен за: 94мсек.
Проверяемая страница не запрещена в robots.txt.
Robots.txt доступен по постоянному адресу
Показать содержимое robots.txt
User-agent: *
Disallow:
Sitemap: https://docs.flutter.dev/sitemap.xml
Sitemap
Кол-во: 1
XML-карта сайта для поисковиков
?
Sitemap.xml помогает поисковику быстрее находить и индексировать страницы. Особенно важен для крупных сайтов и новых страниц, на которые ещё нет входящих ссылок.
Robots.txt содержит карту сайта. Это прекрасно!
Robots.txt не содержит ошибок в карте сайта.
Показать карту сайта
| Url | Статус |
|---|---|
| https://docs.flutter.dev/sitemap.xml |
|
Внутренние ссылки
Кол-во: 337
Ссылки на другие страницы своего сайта
?
Внутренние ссылки распределяют ссылочный вес между страницами и помогают поисковику обходить сайт. Пустые анкоры и ссылки на запрещённые robots.txt страницы — типичные ошибки.
Внутренних ссылок на странице 337 слишком много. Проведите оптимизацию сайта!
Внутренние ссылки не запрещены к индексации в robots.txt.
На странице присутствуют изображения 3.
Показать первые 100 внутренних ссылок
| Url | Анкор | Состояние |
|---|---|---|
| / |
Guides
|
|
| /learn/pathway |
Learn
|
|
| /ai/create-with-ai |
AI
|
|
| /search |
<span class="material-symbols" aria-hidden="true" translate="no">search</span>
|
|
| /learn/pathway |
Get started
|
|
| / |
<span class="material-symbols" aria-hidden="true" translate="no">asterisk</span>Guides
|
|
| /learn/pathway |
<span class="material-symbols" aria-hidden="true" translate="no">play_lesson</span>Learn
|
|
| /ai/create-with-ai |
<span class="material-symbols" aria-hidden="true" translate="no">auto_awesome</span>AI
|
|
| /install/quick |
<div><span>Quick start</span></div>
|
|
| /install/custom |
<div><span>Custom setup</span></div>
|
|
| /learn |
<div><span>Learn Flutter</span></div>
|
|
| /ui |
<div><span class="material-symbols leading" aria-hidden="true" translate="no">palette</span><span>Introduction</span></div>
|
|
| /ui/widgets |
<div><span>Overview</span></div>
|
|
| /ui/widgets/cupertino |
<div><span>Cupertino</span></div>
|
|
| /ui/widgets/material |
<div><span>Material components</span></div>
|
|
| /ui/widgets/accessibility |
<div><span>Accessibility</span></div>
|
|
| /ui/widgets/animation |
<div><span>Animation</span></div>
|
|
| /ui/widgets/assets |
<div><span>Assets</span></div>
|
|
| /ui/widgets/async |
<div><span>Async</span></div>
|
|
| /ui/widgets/basics |
<div><span>Basics</span></div>
|
|
| /ui/widgets/input |
<div><span>Input</span></div>
|
|
| /ui/widgets/interaction |
<div><span>Interaction</span></div>
|
|
| /ui/widgets/layout |
<div><span>Layout</span></div>
|
|
| /ui/widgets/painting |
<div><span>Painting</span></div>
|
|
| /ui/widgets/scrolling |
<div><span>Scrolling</span></div>
|
|
| /ui/widgets/styling |
<div><span>Styling</span></div>
|
|
| /ui/widgets/text |
<div><span>Text</span></div>
|
|
| /ui/layout |
<div><span>Introduction</span></div>
|
|
| /ui/layout/tutorial |
<div><span>Build a layout</span></div>
|
|
| /cookbook/lists/basic-list |
<div><span>Create and use lists</span></div>
|
|
| /cookbook/lists/horizontal-list |
<div><span>Create a horizontal list</span></div>
|
|
| /cookbook/lists/grid-lists |
<div><span>Create a grid view</span></div>
|
|
| /cookbook/lists/mixed-list |
<div><span>Create lists with different types of items</span></div>
|
|
| /cookbook/lists/spaced-items |
<div><span>Create lists with spaced items</span></div>
|
|
| /cookbook/lists/long-lists |
<div><span>Work with long lists</span></div>
|
|
| /ui/layout/scrolling |
<div><span>Overview</span></div>
|
|
| /ui/layout/scrolling/slivers |
<div><span>Use slivers to achieve fancy scrolling</span></div>
|
|
| /cookbook/lists/floating-app-bar |
<div><span>Place a floating app bar above a list</span></div>
|
|
| /cookbook/effects/parallax-scrolling |
<div><span>Create a scrolling parallax effect</span></div>
|
|
| /ui/adaptive-responsive |
<div><span>Overview</span></div>
|
|
| /ui/adaptive-responsive/general |
<div><span>General approach</span></div>
|
|
| /ui/adaptive-responsive/safearea-mediaquery |
<div><span>SafeArea & MediaQuery</span></div>
|
|
| /ui/adaptive-responsive/large-screens |
<div><span>Large screens & foldables</span></div>
|
|
| /ui/adaptive-responsive/input |
<div><span>User input & accessibility</span></div>
|
|
| /ui/adaptive-responsive/capabilities |
<div><span>Capabilities & policies</span></div>
|
|
| /ui/adaptive-responsive/platform-adaptations |
<div><span>Automatic platform adaptations</span></div>
|
|
| /ui/adaptive-responsive/best-practices |
<div><span>Best practices</span></div>
|
|
| /ui/adaptive-responsive/more-info |
<div><span>Additional resources</span></div>
|
|
| /cookbook/design/themes |
<div><span>Share styles with themes</span></div>
|
|
| /ui/design/material |
<div><span>Material design</span></div>
|
|
| /release/breaking-changes/material-3-migration |
<div><span>Migrate to Material 3</span></div>
|
|
| /ui/design/text/typography |
<div><span>Fonts & typography</span></div>
|
|
| /cookbook/design/fonts |
<div><span>Use a custom font</span></div>
|
|
| /cookbook/design/package-fonts |
<div><span>Export fonts from a package</span></div>
|
|
| /ui/design/graphics/fragment-shaders |
<div><span>Use custom fragment shaders</span></div>
|
|
| /ui/interactivity |
<div><span>Add interactivity to your app</span></div>
|
|
| /ui/interactivity/gestures |
<div><span>Introduction</span></div>
|
|
| /cookbook/gestures/handling-taps |
<div><span>Handle taps</span></div>
|
|
| /ui/interactivity/gestures/drag-outside |
<div><span>Drag an object outside an app</span></div>
|
|
| /cookbook/effects/drag-a-widget |
<div><span>Drag a UI element within an app</span></div>
|
|
| /cookbook/gestures/ripples |
<div><span>Add Material touch ripples</span></div>
|
|
| /cookbook/gestures/dismissible |
<div><span>Implement swipe to dismiss</span></div>
|
|
| /cookbook/forms/text-input |
<div><span>Create and style a text field</span></div>
|
|
| /cookbook/forms/retrieve-input |
<div><span>Retrieve the value of a text field</span></div>
|
|
| /cookbook/forms/text-field-changes |
<div><span>Handle changes to a text field</span></div>
|
|
| /cookbook/forms/focus |
<div><span>Manage focus in text fields</span></div>
|
|
| /cookbook/forms/validation |
<div><span>Build a form with validation</span></div>
|
|
| /cookbook/design/snackbars |
<div><span>Display a snackbar</span></div>
|
|
| /ui/interactivity/actions-and-shortcuts |
<div><span>Implement actions & shortcuts</span></div>
|
|
| /ui/interactivity/focus |
<div><span>Manage keyboard focus</span></div>
|
|
| /ui/assets/assets-and-images |
<div><span>Add assets and images</span></div>
|
|
| /cookbook/images/network-image |
<div><span>Display images from the internet</span></div>
|
|
| /cookbook/images/fading-in-images |
<div><span>Fade in images with a placeholder</span></div>
|
|
| /cookbook/plugins/play-video |
<div><span>Play and pause a video</span></div>
|
|
| /ui/assets/asset-transformation |
<div><span>Transform assets at build time</span></div>
|
|
| /ui/navigation |
<div><span>Overview</span></div>
|
|
| /cookbook/design/tabs |
<div><span>Add tabs to your app</span></div>
|
|
| /cookbook/navigation/navigation-basics |
<div><span>Navigate to a new screen and back</span></div>
|
|
| /cookbook/navigation/passing-data |
<div><span>Send data to a new screen</span></div>
|
|
| /cookbook/navigation/returning-data |
<div><span>Return data from a screen</span></div>
|
|
| /cookbook/design/drawer |
<div><span>Add a drawer to a screen</span></div>
|
|
| /cookbook/design/cupertino-sheets |
<div><span>Display a Cupertino sheet</span></div>
|
|
| /ui/navigation/deep-linking |
<div><span>Set up deep linking</span></div>
|
|
| /cookbook/navigation/set-up-app-links |
<div><span>Set up app links for Android</span></div>
|
|
| /cookbook/navigation/set-up-universal-links |
<div><span>Set up universal links for iOS</span></div>
|
|
| /ui/navigation/url-strategies |
<div><span>Configure web URL strategies</span></div>
|
|
| /ui/animations |
<div><span>Introduction</span></div>
|
|
| /ui/animations/tutorial |
<div><span>Tutorial</span></div>
|
|
| /ui/animations/implicit-animations |
<div><span>Implicit animations</span></div>
|
|
| /cookbook/animation/animated-container |
<div><span>Animate the properties of a container</span></div>
|
|
| /cookbook/animation/opacity-animation |
<div><span>Fade a widget in and out</span></div>
|
|
| /ui/animations/hero-animations |
<div><span>Hero animations</span></div>
|
|
| /cookbook/animation/page-route-animation |
<div><span>Animate a page route transition</span></div>
|
|
| /cookbook/animation/physics-simulation |
<div><span>Animate using a physics simulation</span></div>
|
|
| /ui/animations/staggered-animations |
<div><span>Staggered animations</span></div>
|
|
| /cookbook/effects/staggered-menu-animation |
<div><span>Create a staggered menu animation</span></div>
|
|
| /ui/animations/overview |
<div><span>API overview</span></div>
|
|
| /ui/accessibility |
<div><span>Introduction</span></div>
|
|
| /ui/accessibility/ui-design-and-styling |
<div><span>UI design & styling</span></div>
|
|
| /ui/accessibility/assistive-technologies |
<div><span>Assistive technologies</span></div>
|
|
Внешние ссылки
Кол-во: 106
Ссылки на сторонние сайты
?
Исходящие внешние ссылки передают часть ссылочного веса на чужие сайты. Ссылки на авторитетные ресурсы безопасны; ссылки на мусорные сайты могут навредить репутации страницы.
Внешних ссылок на странице 106 слишком много. Спрячьте лишние ссылки в тег noindex или атрибут rel='nofollow'!
Показать первые 100 внешних ссылок
| Url | Анкор |
|---|---|
| policies.google.com |
Learn more
|
| api.flutter.dev |
Reference
|
| flutter.dev |
<img alt="Flutter logo" width="28" src="/assets/images/branding/flutter/logo/default.svg"><span class="name" translate="no">Flutter</span>
|
| api.flutter.dev |
<img alt="Flutter logo" width="28" src="/assets/images/branding/flutter/logo/default.svg"><span class="name" translate="no">Flutter</span><span class="subtype">API</span>
|
| blog.flutter.dev |
<img alt="Flutter logo" width="28" src="/assets/images/branding/flutter/logo/default.svg"><span class="name" translate="no">Flutter</span><span class="subtype">Blog</span>
|
| dart.dev |
<img alt="Dart logo" width="28" height="28" src="/assets/images/branding/dart/logo.svg"><span class="name" translate="no">Dart</span>
|
| dartpad.dev |
<img alt="Dart logo" width="28" height="28" src="/assets/images/branding/dart/logo.svg"><span class="name" translate="no">DartPad</span>
|
| pub.dev |
<img alt="Dart logo" width="28" height="28" src="/assets/images/branding/dart/logo.svg"><span class="name" translate="no">pub.dev</span>
|
| api.flutter.dev |
<span class="material-symbols" aria-hidden="true" translate="no">api</span>Reference
|
| pub.dev |
<div><span>Google Fonts package</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Add Firebase to your Flutter app</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| pub.dev |
<div><span>Package repository</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Firebase AI Logic</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| genkit.dev |
<div><span>Genkit Dart</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Discover Firebase for Flutter</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| youtube.com |
<div><span>Get to know Firebase for Flutter</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Add a user authentication flow to a Flutter app using FirebaseUI</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Get to know Firebase for web</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Build leaderboards with Firestore</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| codelabs.developers.google.com |
<div><span>Add in-app purchases</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Add user authentication</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| firebase.google.com |
<div><span>Debug using Crashlytics</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| codelabs.developers.google.com |
<div><span>Intro to Flame with Flutter</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| codelabs.developers.google.com |
<div><span>Add AdMob ads to your Flutter app</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| codelabs.developers.google.com |
<div><span>Add an AdMob banner and native inline ads</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| youtube.com |
<div><span>Integrate multimedia ads (video)</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| developers.google.com |
<div><span>Google AdMob mediation</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| pub.dev |
<div><span>Interactive Media Ads SDK</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| pub.dev |
<div><span>Google pay package</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| codelabs.developers.google.com |
<div><span>Add in-app purchases</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| codelabs.developers.google.com |
<div><span>Add Google maps to a Flutter app</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| developers.google.com |
<div><span>Google Maps package</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| blog.flutter.dev |
<div><span>Flutter blog</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| api.flutter.dev |
<div><span>API docs</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div>
|
| flutter.dev |
blog post
|
| github.com |
<span class="material-symbols" aria-hidden="true" translate="no">bug_report</span>Report an issue
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoActionSheet widget." src="/assets/images/docs/widget-catalog/cupertino-action-sheet.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Action<wbr>Sheet</span></div>
<div class="card-content"><p>An iOS-style modal bottom action sheet to choose an option among many.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoActionSheetAction widget." src="/assets/images/docs/widget-catalog/cupertino-action-sheet.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Action<wbr>Sheet<wbr>Action</span></div>
<div class="card-content"><p>A button typically used in a CupertinoActionSheet.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoActivityIndicator widget." src="/assets/images/docs/widget-catalog/cupertino-activity-indicator.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Activity<wbr>Indicator</span></div>
<div class="card-content"><p>An iOS-style activity indicator. Displays a circular 'spinner'.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoAdaptiveTextSelectionToolbar widget." src="/assets/images/docs/widget-catalog/CupertinoAdaptiveTextSelectionToolbar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Adaptive<wbr>Text<wbr>Selection<wbr>Toolbar</span></div>
<div class="card-content">
<p>
The default Cupertino context menu for text selection for the current platform with the given children.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoAlertDialog widget." src="/assets/images/docs/widget-catalog/cupertino-alert-dialog.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Alert<wbr>Dialog</span></div>
<div class="card-content"><p>An iOS-style alert dialog.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoApp widget." src="/assets/images/docs/widget-catalog/CupertinoApp.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>App</span></div>
<div class="card-content"><p>An application that uses Cupertino design.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoButton widget." src="/assets/images/docs/widget-catalog/cupertino-button.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Button</span></div>
<div class="card-content"><p>An iOS-style button.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoCheckBox widget." src="/assets/images/docs/widget-catalog/CupertinoCheckbox.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Check<wbr>Box</span></div>
<div class="card-content"><p>A macOS-style checkbox.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoColors widget." src="/assets/images/docs/widget-catalog/CupertinoColors.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Colors</span></div>
<div class="card-content">
<p>
A palette of Color constants that describe colors commonly used when matching the iOS platform aesthetics.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoContextMenu widget." src="/assets/images/docs/widget-catalog/cupertino-context-menu.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Context<wbr>Menu</span></div>
<div class="card-content">
<p>
An iOS-style full-screen modal route that opens when the child is long-pressed. Used to display relevant actions for your content.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoContextMenuAction widget." src="/assets/images/docs/widget-catalog/CupertinoContextMenuAction.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Context<wbr>Menu<wbr>Action</span></div>
<div class="card-content"><p>A button in a ContextMenuSheet.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoDatePicker widget." src="/assets/images/docs/widget-catalog/CupertinoDatePicker.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Date<wbr>Picker</span></div>
<div class="card-content"><p>An iOS-style date or date and time picker.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Desktop<wbr>Text<wbr>Selection<wbr>Controls</span></div>
<div class="card-content"><p>Desktop Cupertino styled text selection controls.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoDesktopTextSelectionToolbar widget." src="/assets/images/docs/widget-catalog/CupertinoDesktopTextSelectionToolbar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Desktop<wbr>Text<wbr>Selection<wbr>Toolbar</span></div>
<div class="card-content"><p>A macOS-style text selection toolbar.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoDesktopTextSelectionToolbarButton widget." src="/assets/images/docs/widget-catalog/CupertinoDesktopTextSelectionToolbarButton.png">
</div>
<div class="card-header">
<span class="card-title">Cupertino<wbr>Desktop<wbr>Text<wbr>Selection<wbr>Toolbar<wbr>Button</span>
</div>
<div class="card-content"><p>A button in the style of the macOS context menu buttons.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoDialogAction widget." src="/assets/images/docs/widget-catalog/cupertino-dialog-action.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Dialog<wbr>Action</span></div>
<div class="card-content"><p>A button typically used in a CupertinoAlertDialog.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Dialog<wbr>Route</span></div>
<div class="card-content"><p>A dialog route that shows an iOS-style dialog.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Dynamic<wbr>Color</span></div>
<div class="card-content">
<p>
A Color subclass that represents a family of colors, and the correct effective color in the color family.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoFormRow widget." src="/assets/images/docs/widget-catalog/CupertinoFormRow.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Form<wbr>Row</span></div>
<div class="card-content"><p>An iOS-style form row.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoFormSection widget." src="/assets/images/docs/widget-catalog/CupertinoFormSection.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Form<wbr>Section</span></div>
<div class="card-content"><p>An iOS-style form section.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoFullscreenDialogTransition widget." src="/assets/images/docs/widget-catalog/cupertino-fullscreen-dialog-transition.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Fullscreen<wbr>Dialog<wbr>Transition</span></div>
<div class="card-content"><p>An iOS-style transition used for summoning fullscreen dialogs.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Theme<wbr>Data</span></div>
<div class="card-content"><p>Styling specifications for a CupertinoTheme.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoListSection widget." src="/assets/images/docs/widget-catalog/cupertino-list-section.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>List<wbr>Section</span></div>
<div class="card-content"><p>Container that uses the iOS style to display a scrollable view.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoListTile widget." src="/assets/images/docs/widget-catalog/cupertino-list-tile.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>List<wbr>Tile</span></div>
<div class="card-content"><p>A block that uses the iOS style to create a row in a list.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoListTileChevron widget." src="/assets/images/docs/widget-catalog/CupertinoListTileChevron.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>List<wbr>Tile<wbr>Chevron</span></div>
<div class="card-content">
<p>A typical iOS trailing widget used to denote that a CupertinoListTile is a button with an action.</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Localizations</span></div>
<div class="card-content"><p>Defines the localized resource values used by the Cupertino widgets.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Magnifier</span></div>
<div class="card-content">
<p>
A RawMagnifier used for magnifying text in cases where a user's finger may be blocking the point of interest, like a selection handle.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Modal<wbr>Popup<wbr>Route</span></div>
<div class="card-content"><p>A route that shows a modal iOS-style popup that slides up from the bottom of the screen.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoNavigationBar widget." src="/assets/images/docs/widget-catalog/cupertino-nav-bar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Navigation<wbr>Bar</span></div>
<div class="card-content">
<p>
Container at the top of a screen that uses the iOS style. Many developers use this with <code>CupertinoPageScaffold</code>.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoNavigationBarBackButton widget." src="/assets/images/docs/widget-catalog/CupertinoNavigationBarBackButton.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Navigation<wbr>Bar<wbr>Back<wbr>Button</span></div>
<div class="card-content"><p>A nav bar back button typically used in CupertinoNavigationBar.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Page</span></div>
<div class="card-content"><p>A page that creates a cupertino style PageRoute.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Page<wbr>Route</span></div>
<div class="card-content"><p>A modal route that replaces the entire screen with an iOS transition.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Page<wbr>Scaffold</span></div>
<div class="card-content">
<p>Basic iOS style page layout structure. Positions a navigation bar and content on a background.</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoPageTransition widget." src="/assets/images/docs/widget-catalog/cupertino-page-transition.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Page<wbr>Transition</span></div>
<div class="card-content"><p>Provides an iOS-style page transition animation.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoPicker widget." src="/assets/images/docs/widget-catalog/CupertinoPicker.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Picker</span></div>
<div class="card-content"><p>An iOS-style picker control. Used to select an item in a short list.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Picker<wbr>Default<wbr>Selection<wbr>Overlay</span></div>
<div class="card-content"><p>A default selection overlay for CupertinoPickers.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Popup<wbr>Surface</span></div>
<div class="card-content">
<p>
Rounded rectangle surface that looks like an iOS popup surface, such as an alert dialog or action sheet.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoRadio widget." src="/assets/images/docs/widget-catalog/CupertinoRadio.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Radio</span></div>
<div class="card-content"><p>A macOS-style radio button.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoScrollbar widget." src="/assets/images/docs/widget-catalog/cupertino-scrollbar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Scrollbar</span></div>
<div class="card-content">
<p>An iOS-style scrollbar that indicates which portion of a scrollable widget is currently visible.</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Scroll<wbr>Behavior</span></div>
<div class="card-content"><p>Describes how Scrollable widgets behave for CupertinoApps.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoSearchTextField widget." src="/assets/images/docs/widget-catalog/cupertino-search-field.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Search<wbr>Text<wbr>Field</span></div>
<div class="card-content"><p>An iOS-style search field.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoSlider widget." src="/assets/images/docs/widget-catalog/cupertino-slider.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Slider</span></div>
<div class="card-content"><p>Used to select from a range of values.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoSlidingSegmentedControl widget." src="/assets/images/docs/widget-catalog/cupertino-sliding-segmented-control.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Sliding<wbr>Segmented<wbr>Control</span></div>
<div class="card-content">
<p>An iOS-13-style segmented control. Used to select mutually exclusive options in a horizontal list.</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoSliverNavigationBar widget." src="/assets/images/docs/widget-catalog/cupertino-sliver-navigation-bar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Sliver<wbr>Navigation<wbr>Bar</span></div>
<div class="card-content"><p>A navigation bar with iOS-11-style large titles using slivers.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Sliver<wbr>Refresh<wbr>Control</span></div>
<div class="card-content"><p>A sliver widget implementing the iOS-style pull to refresh content control.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoSpellCheckSuggestionsToolbar widget." src="/assets/images/docs/widget-catalog/CupertinoSpellCheckSuggestionsToolbar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Spell<wbr>Check<wbr>Suggestions<wbr>Toolbar</span></div>
<div class="card-content"><p>The default spell check suggestions toolbar for iOS.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoSwitch widget." src="/assets/images/docs/widget-catalog/cupertino-switch.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Switch</span></div>
<div class="card-content"><p>An iOS-style switch. Used to toggle the on/off state of a single setting.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTabBar widget." src="/assets/images/docs/widget-catalog/cupertino-tab-bar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Tab<wbr>Bar</span></div>
<div class="card-content"><p>An iOS-style bottom tab bar. Typically used with CupertinoTabScaffold.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Tab<wbr>Controller</span></div>
<div class="card-content"><p>Coordinates tab selection between a CupertinoTabBar and a CupertinoTabScaffold.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTabScaffold widget." src="/assets/images/docs/widget-catalog/cupertino-tab-scaffold.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Tab<wbr>Scaffold</span></div>
<div class="card-content"><p>Tabbed iOS app structure. Positions a tab bar on top of tabs of content.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTabView widget." src="/assets/images/docs/widget-catalog/cupertino-tab-view.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Tab<wbr>View</span></div>
<div class="card-content">
<p>
Root content of a tab that supports parallel navigation between tabs. Typically used with CupertinoTabScaffold.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTextField widget." src="/assets/images/docs/widget-catalog/cupertino-textfield.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Text<wbr>Field</span></div>
<div class="card-content"><p>An iOS-style text field.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTextFormFieldRow widget." src="/assets/images/docs/widget-catalog/CupertinoTextFormFieldRow.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Text<wbr>Form<wbr>Field<wbr>Row</span></div>
<div class="card-content"><p>Creates a CupertinoFormRow containing a FormField that wraps a CupertinoTextField.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTextMagnifier widget." src="/assets/images/docs/widget-catalog/CupertinoTextMagnifier.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Text<wbr>Magnifier</span></div>
<div class="card-content">
<p>
A CupertinoMagnifier used for magnifying text in cases where a user's finger may be blocking the point of interest, like a selection handle.
</p>
</div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Text<wbr>Selection<wbr>Controls</span></div>
<div class="card-content"><p>iOS-style text selection controls.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTextSelectionToolbar widget." src="/assets/images/docs/widget-catalog/CupertinoTextSelectionToolbar.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Text<wbr>Selection<wbr>Toolbar</span></div>
<div class="card-content"><p>An iOS-style text selection toolbar.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTextSelectionToolbarButton widget." src="/assets/images/docs/widget-catalog/CupertinoTextSelectionToolbarButton.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Text<wbr>Selection<wbr>Toolbar<wbr>Button</span></div>
<div class="card-content"><p>A button in the style of the iOS text selection toolbar buttons.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Text<wbr>Theme<wbr>Data</span></div>
<div class="card-content"><p>Cupertino typography theme in a CupertinoThemeData.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Theme</span></div>
<div class="card-content"><p>Applies a visual styling theme to descendant Cupertino widgets.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img aria-hidden="true" alt="Placeholder Flutter logo in place of missing widget image or visualization." src="/assets/images/docs/catalog-widget-placeholder.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Thumb<wbr>Painter</span></div>
<div class="card-content"><p>Paints an iOS-style slider thumb or switch thumb.</p></div>
|
| api.flutter.dev |
<div class="card-image-holder">
<img alt="Rendered image or visualization of the CupertinoTimerPicker widget." src="/assets/images/docs/widget-catalog/CupertinoTimerPicker.png">
</div>
<div class="card-header"><span class="card-title">Cupertino<wbr>Timer<wbr>Picker</span></div>
<div class="card-content"><p>An iOS-style countdown timer picker.</p></div>
|
| github.com |
Report an issue
|
| youtube.com |
<svg><use href="/assets/images/social/youtube.svg#youtube"></use></svg>
|
| github.com |
<svg><use href="/assets/images/social/github.svg#github"></use></svg>
|
Конкуренты Готовность: 0%
Конкуренты в Яндексе
Кол-во: 0
Топ сайтов-конкурентов в Яндексе
?
Сайты, чаще всего появляющиеся в ТОПе Яндекса по запросам из семантического ядра этой страницы.
Мы не нашли у вас конкурентов в Яндексе. Сайт или очень молодой или плохо продвигается.
Конкурентов в ТОП-10 Яндекса не нашлось.
Конкуренты в Google
Кол-во: 0
Топ сайтов-конкурентов в Google
?
Сайты, чаще всего появляющиеся в ТОПе Google по запросам из семантического ядра этой страницы.
Конкуренты в Google тоже не найдены. Займитесь продвижением сайта!
Конкурентов в ТОП-10 Google не нашлось.
ЗоЗПП: права потребителей Готовность: 100%
Нарушения
Не выявлены
Признаков дистанционной продажи товаров (интернет-магазина) не обнаружено — требования ЗоЗПП о раскрытии информации продавца к сайту не применяются. Нарушений нет.
ФЗ-149: рекомендательные технологии Готовность: 100%
Нарушения
Не выявлены
Рекомендательные блоки («с этим покупают», «похожие товары» и т.п.) на сайте не обнаружены — требования ст. 10.7 ФЗ-149 к сайту не применяются. Нарушений нет.
ФЗ-38: реклама Готовность: 100%
Нарушения
Не выявлены
Рекламных тематик с обязательными оговорками (медицина, БАД, кредиты и займы, новостройки) на сайте не обнаружено. Нарушений нет.
ФЗ-436: защита детей Готовность: 100%
Нарушения
Не выявлены
Признаков информационной продукции (новости, видео, книги, игры, курсы) не обнаружено — обязательная возрастная маркировка по ФЗ-436 сайту не требуется. Нарушений нет.
Вердикт
Страница https://docs.flutter.dev/ui/widgets/cupertino готова к продвижению на 50%. Чтобы еще улучшить страницу и попасть на первые места поисковой выдачи необходимо:
Исправьте ошибки в мета-тегах.
Исправьте ошибки оптимизации.
Исправьте ошибки индексации.
Поделитесь с друзьями: