Создание ToolBar в Fragment

Создаю активити на нем фрагмент, а в фрагменте должен быть ToolBar! Но его нет! Делаю так

высоту/ширену задаю в стилях !

Вроде все так! Может что-то пропустил? Подскажите в чем ошибка моя !! Спасибо!

Обновление fragment из другого fragment
Добрый вечер всем!! Подскажите пожалуйста как обновить один фрагмент из другого (а именно TextView.

Создание Toolbar’ а
Необходимо создать Toolbar с 3-я кнопками, по нажатию которых будут вызваны диалоги: a) открытие.

Создание Toolbar
Привет! Столкнулся с проблемой, нужно сделать Toolbar ( как VS Windows Form или QT creator).

Создание Toolbar
Нужно из имеющего изображения кнопок создать панель инструментов. Делаю все, как описано на MSDN.

поместить тулбар во фрагмент можно, но это не кошерно и глупо
в идеале есть активити в которой тулбар и под тулбаром какой-то лаяут
и этот лаяут используется как контейнер для фрагментов

если нужно делать свое меню для каждого фрагмента то можно почитать тут

Решение

Создание ToolBar: CreateToolbarEx()
Здравствуйте! Не получается создать ToolBar. На мой взгляд все правильно, но вылазит ошибка .

Создание кнопок на ToolBar-е
Создаю Win32 Application, в оконной процедуре главного окна пишу (WM_CREATE): DWORD dwStyle;.

Создание toolbar для ie 6+ на C#
Необходимо создать с 0 toolbar для ie 6++ на c#. Был бы благодарен за любую информацию, литературу.

Динамическая форма — Создание ToolBar
Доброго времени суток, Уважаемые спецы! Столкнулся с необходимостью создания нового ToolBar в окне.

Источник

Fragment Toolbar.

Manage it better.

Introduction

Since I started work commercially I met an opinion that working with Fragments is not always intuitive, at least not as much as working with Activities. Especially after watching this video your mindset in context of Fragments might change significantly. Complicated lifecycle, hard management will not change the way of thinking about it.

Few weeks ago I had to deal with really big thing. I’ve moved big app built in 95% on Activities to Fragments. I was very long way, very hard one. I’ve learnt a lot, so wanted to share this knowledge with you.

Toolbar for Fragment. What is wrong with it ?

Let’s assume that we have only one Activity with bottom navigation and the rest of views are Fragments. Normally on every Fragment change toolbar is set as supportActionBar which gives you possibilities to use methods to create, prepare, manage toolbar options menu. It looks simple, doesn’t it?
But it also creates some problems:

  • Before creating new toolbar on another Fragment you need to clear the old one.
  • If you are clearing it, indeed you are losing state and all data.
  • When you are going back to previous Fragments you have to recreate whole action bar.
Читайте также:  Платформа андроида скрыта что это

As you can see it is a very inconvenient process, hard to maintain and generates a lot of boilerplate code. Especially if you are using searchView all those disadvantages mentioned above are unacceptable.

What is the solution ?

Assuming that we have few types of toolbar in app, you can build it using Builder Pattern and handle all cases in one place. All work comes down to choosing options for your Toolbar.

Starting point is to select one of two possible solutions. First one suggests to create one Toolbar and add it from code to your views. The second, which I have chosen is to implement toolbar in every Fragment’s .xml file. Basically, it was much easier for me because it was already done (refactoring code from Activities), so code below will match the second option.

Lets create FragmentToolbar Builder which contains all options we need in our app. I’m using Kotlin to achieve it, but my Fragments are still in Java, so I had to use implementation readable for Java.

Nothing revealing, let’s add those options to our toolbar.

Create BaseFragment which will be inherited by every Fragment.

Finally we are prepared to create Toolbars for our Fragments! Now every Fragment must specify which options will be used or if the Toolbar should even exist. Following the simple example:

To more complex:

Summary

Everyone knows how much time we spend on adding menu options and how many lines in code we need to write or copy/paste. This solution saves your time and keeps code clean. No need to set toolbar as supportActionBar. You don’t have to worry about keeping state and data for menu when Fragment changes (it lives as long as your Fragment). To sum up, management is as simple as possible and fragmentManager backstack changes (adding / removing Fragments) has no effect on toolbar at all.

Personally I feel better when I’m dealing with Activities. Working with Fragments pushed me to simplify this process. So when you’ll be in the same situation — don’t fight with it, just do it by your own.

If you like my work hit clap button and let me know what you think in comments!

Источник

Установить заголовок inToolBar из фрагмента в Android

Я использую последнюю панель инструментов из appcompatv7 lib.Я поместил textview в ViewGroup панели инструментов, и я хочу установить заголовок в этом Textview из фрагмента в моей деятельности.В случае настраиваемой панели действий ((ActionBarActivity)getActivity).setcustomView(..) сделал бы свою работу.Но из-за использования этой панели инструментов я не могу использовать это.Также я реализовал метод в своей BaseActivity, который наследуется всеми действиями.Эта BaseActivity содержит мой метод для инициализируйте выдвижной ящик слева.Я должен инициализировать метод initDrawerLayout () в activity, иначе ящик не будет инициализирован.И если я инициализирую его во фрагменте, он дает мне все пустые результаты, ни кнопка переключения для ящика, ни пользовательский заголовок не устанавливаются.

Читайте также:  Как увеличить шрифт клавиатура андроид

Это мой код initDrawer..

и это мой код во фрагменте..

((FirstActivity) getActivity()).initDrawerLayout(mFirst.name); где mFirst-объект класса Person

и код панели инструментов..

пожалуйста помогите парни..

13 ответов

чтобы разрешить фрагменту связываться с его активностью (чтобы установить заголовок панели инструментов), вы можете определить интерфейс в классе Fragment и реализовать его в рамках действия, как описано здесь: связь с другими фрагментами.

Я делаю это, как это: из фрагмента вызов

Также вы можете вызвать любую функцию вашей родительской деятельности следующим образом:

ответ записывается ниже в oncreateview метод фрагментов.

Если у вас есть setSupportActionBar в вашей деятельности, то вы можете легко изменить заголовок панели инструментов из вашего фрагмента

вы можете изменить название панели инструментов на событии OnAttach, что-то вроде этого

Если вы используете пользовательскую панель инструментов, это поможет вам:

если кто-то борется с этой проблемой, это может быть полезно.

в основном у вас есть 4 варианта, как с этим справиться:

  • используйте интерфейс для связи с вашей деятельностью или любым другим удобным методом, таким как шина событий.
  • вы называете getActivity().setTitle(«Title») , но в этом случае вам нужно прикрепить свой Toolbar до ActionBar по телефону setSupportActionBar() в вашей деятельности.
  • вы можете иметь открытый экземпляр Toolbar и доступ к этому экземпляру из фрагмента.

наконец, если вам нужен экземпляр Toolbar (вы можете сделать что-то еще), вы можете просто получить его таким образом:

Ну, последний вариант решит проблему, только если Toolbar не был передан setSupportActionBar метод.

если это было, то вам нужно вызвать этот метод в вашем активность:

что решит проблему.

тем не менее, я бы предложил использовать ButterKnife что сделает его немного чище, вот пример:

Источник

Material Design. Динамический Toolbar на живом примере

Уверен, что те, кто следят за изменениями в мире Android, заметили, что Toolbar начинает играть в приложениях всё более значимую роль. Например в последней версии Gmail клиента в Toolbar вынесен почти весь функционал по работе с почтой, а в новом Google Chrome Toolbar отвечает за работу с текстом страниц.

В данной статье я постараюсь рассказать о создании динамического Toolbar, который позволит пользователю работать с контентом четырьмя различными способами в рамках одного Activity. Мы рассмотрим весь процесс разработки Toolbar-a начиная с xml файлов стилей и заканчивая анимацией иконок, а в конце статьи я оставлю ссылку на GitHub репозиторий с примером полностью рабочего приложения.

Начнём с постановки задачи

Мы будем разрабатывать Toolbar для приложения, которое позволит пользователю следить за изменениями цен на акции. На главном экране будет расположен список всех акций, за которыми следит пользователь, мы также должны реализовать базовый функционал: удаление, поиск и сортировку акций. Вот так я реализовал этот функционал с помощью динамического Toolbar-a:

Стандартный режим Режим поиска Режим удаления Режим сортировки

Создаём xml файлы конфигураций

Итак, в первую очередь нам нужно создать xml файл самого Toolbar-a. Я советую сделать это в отдельном файле, так как в будущем мы скорее всего захотим использовать один и тот же (или похожий) Toolbar во всех Activity нашего приложения.

Теперь мы можем добавить toolbar.xml в xml Activity следующим образом:
res/layout/activity_main.xml

Поскольку в нашем Toolbar будет располагаться виджет поиска, мы можем настроить его внешний в вид в файле styles.xml нашего приложения. В 21 версии Android SDK появилось гораздо больше возможностей для кастомизации виджета поиска (SearchView Widget), вы можете посмотреть полный список атрибутов по этой ссылке: AppCompat v21 — Material Design for Pre-Lollipop Devices! В этом же файле мы зададим цвет нашего Toolbar.

И наконец создадим файл со списком всех элементов нашего Toolbar-а. Тут у нас есть несколько вариантов:

  • В начале создать только те элементы, которые будут видны в стандартном режиме, а затем в коде добавлять или удалять элементы при переходе между режимами.
  • Сразу создать все существующие элементы в xml файле, а в коде просто управлять их видимостью.

Я выбрал второй вариант так как у нас не так много элементов внутри Toolbar и нам нет смысла экономить память храня в ней только видимые элементы.

Также существует два способа создания элементов Toolbar:

    Создавать элементы внутри меню (Menu), как экземпляры класса MenuItem. Этот способ использовался в предыдущих версиях Анрдроид (API Level

Источник

Смена title в toolbar во фрагменте

Как выровнять logo,title и subtitle в toolbar
Доброго времени суток, возник такой вопрос, как можно переместить Logo,Title,Subtitle ближе к.

Смена Toolbar при смене фрагментов в Activity
Добрый день! Есть Toolbar, который подключен к MainActivity. При запуске приложение открывается.

Смена и вывод title
Для работы со страницей определяется global $APPLICATION, но в ядре D7 они вроде отказались от.

Смена логотипа возле title
Смена логотипа возле title , при поиске сайт выводиться мой и лого хостинга там висит , как сменить.

Решение

Да что ж этот котлин себе позволяет. методы ворует

Смена title в компоненте com_cotalog
Всем доброго времени суток! Столкнулся с такой проблемой. Воспользовался стандартным каталогом в.

Вывод во втором фрагменте длины текста, введённого в первом фрагменте активити
Создать активити с двумя фрагментами. В первый фрагмент должен содержать поле ввода, второй.

Как отключить в броузере синенькую полосочку, где выводится то что заключено между тегами и ?
А как отключить в броузере синенькую полосочку, где выводится то что заключено между тегами .

Dle тег в alt и title изображений<br/>Хочется реализовать фишку, чтобы в shortstory изображения img не имеющее атрибутов title и alt.</p> <p style="clear: both"> <img decoding="async" style="float: left; margin: 0 10px 5px 0;" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%200%200'%3E%3C/svg%3E" data-lazy-src="https://cyberstatic.net/images/misc/tick.png"/><noscript><img decoding="async" style="float: left; margin: 0 10px 5px 0;" src="https://cyberstatic.net/images/misc/tick.png"/></noscript>Парсиг Jsoup. Как спарсить не только title но и дату с ссылкой на новость ? У меня получается только title<br/>Получается спарсить и добавить в listview только title . А мне нужно спарсить еще и дату с url .</p> <p><span class="link" data-link="http://www.cyberforum.ru/android-dev/thread2822735.html" >Источник</span></p><div style="clear:both; margin-top:0em; margin-bottom:1em;"><a href="https://service-play.ru/chertilka-dlya-android-plansheta/" target="_blank" rel="nofollow" class="uce230ea10f03a61acfd8e2346ebc1ab8"><!-- INLINE RELATED POSTS 3/3 //--><style> .uce230ea10f03a61acfd8e2346ebc1ab8 { padding:0px; margin: 0; padding-top:1em!important; padding-bottom:1em!important; width:100%; display: block; font-weight:bold; background-color:#34495E; border:0!important; border-left:4px solid #2C3E50!important; text-decoration:none; } .uce230ea10f03a61acfd8e2346ebc1ab8:active, .uce230ea10f03a61acfd8e2346ebc1ab8:hover { opacity: 1; transition: opacity 250ms; webkit-transition: opacity 250ms; text-decoration:none; } .uce230ea10f03a61acfd8e2346ebc1ab8 { transition: background-color 250ms; webkit-transition: background-color 250ms; opacity: 1; transition: opacity 250ms; webkit-transition: opacity 250ms; } .uce230ea10f03a61acfd8e2346ebc1ab8 .ctaText { font-weight:bold; color:#eaeaea; text-decoration:none; font-size: 16px; } .uce230ea10f03a61acfd8e2346ebc1ab8 .postTitle { color:#FFFFFF; text-decoration: underline!important; font-size: 16px; } .uce230ea10f03a61acfd8e2346ebc1ab8:hover .postTitle { text-decoration: underline!important; } </style><div style="padding-left:1em; padding-right:1em;"><span class="ctaText">Читайте также:</span>  <span class="postTitle">Чертилка для андроид планшета</span></div></a></div> </div><!-- .entry-content --> </article> <div class="rating-box"> <div class="rating-box__header">Оцените статью</div> <div class="wp-star-rating js-star-rating star-rating--score-0" data-post-id="164865" data-rating-count="0" data-rating-sum="0" data-rating-value="0"><span class="star-rating-item js-star-rating-item" data-score="1"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="2"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="3"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="4"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="5"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span></div> </div> <div class="entry-social"> <div class="social-buttons"><span class="social-button social-button--vkontakte" data-social="vkontakte" data-image=""></span><span class="social-button social-button--facebook" data-social="facebook"></span><span class="social-button social-button--telegram" data-social="telegram"></span><span class="social-button social-button--odnoklassniki" data-social="odnoklassniki"></span><span class="social-button social-button--twitter" data-social="twitter"></span><span class="social-button social-button--sms" data-social="sms"></span><span class="social-button social-button--whatsapp" data-social="whatsapp"></span></div> </div> <meta itemprop="author" content="admin"> <meta itemscope itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" itemid="https://service-play.ru/164865-2/" content=""> <meta itemprop="dateModified" content="2022-02-13"> <meta itemprop="datePublished" content="2022-02-13T13:47:27+02:00"> <div itemprop="publisher" itemscope itemtype="https://schema.org/Organization" style="display: none;"><meta itemprop="name" content="Ваши гэджеты"><meta itemprop="telephone" content="Ваши гэджеты"><meta itemprop="address" content="https://service-play.ru"></div> </main><!-- #main --> </div><!-- #primary --> <aside id="secondary" class="widget-area" itemscope itemtype="http://schema.org/WPSideBar"> <div class="sticky-sidebar js-sticky-sidebar"> <div id="search-2" class="widget widget_search"> <form role="search" method="get" class="search-form" action="https://service-play.ru/"> <label> <span class="screen-reader-text"><!--noindex-->Search for:<!--/noindex--></span> <input type="search" class="search-field" placeholder="Поиск…" value="" name="s"> </label> <button type="submit" class="search-submit"></button> </form></div> <div id="recent-posts-2" class="widget widget_recent_entries"> <div class="widget-header">Свежие записи</div> <ul> <li> <a href="https://service-play.ru/10-samyh-populyarnyh-gadzhetov-apple-v-istorii/">10 самых популярных гаджетов Apple в истории</a> </li> <li> <a href="https://service-play.ru/puteshestvie-v-buduschee-kak-gadzhety-apple-menyayut-nashu-zhizn/">Путешествие в будущее: как гаджеты Apple меняют нашу жизнь</a> </li> <li> <a href="https://service-play.ru/5-glavnyh-prichin-pereyti-na-gadzhety-apple-obzor-i-sravnenie/">5 главных причин перейти на гаджеты Apple: обзор и сравнение</a> </li> <li> <a href="https://service-play.ru/sekrety-kastomizatsii-gadzhetov-apple-sovety-i-hitrosti/">Секреты кастомизации гаджетов Apple: советы и хитрости</a> </li> <li> <a href="https://service-play.ru/top-10-innovatsionnyh-gadzhetov-apple-o-kotoryh-vy-ne-znali/">Топ-10 инновационных гаджетов Apple, о которых вы не знали</a> </li> </ul> </div><div id="block-2" class="widget widget_block"><div class="flatPM_sidebar" data-top="70"> <div id="Q_sidebar"></div> </div></div> </div> </aside><!-- #secondary --> <div id="related-posts" class="related-posts fixed"><div class="related-posts__header">Вам также может понравиться</div><div class="post-cards post-cards--vertical"> <div class="post-card post-card--related"> <div class="post-card__thumbnail"><a href="https://service-play.ru/kak-deaktivirovat-rezhim-naushnikov-na-smartfone-s-android/"><img width="335" height="220" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20335%20220'%3E%3C/svg%3E" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" data-lazy-src="https://service-play.ru/wp-content/uploads/2023/06/41-1-335x220.png"/><noscript><img width="335" height="220" src="https://service-play.ru/wp-content/uploads/2023/06/41-1-335x220.png" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" loading="lazy"/></noscript></a></div><div class="post-card__title"><a href="https://service-play.ru/kak-deaktivirovat-rezhim-naushnikov-na-smartfone-s-android/">Как деактивировать режим наушников на смартфоне с Android?</a></div><div class="post-card__description">Когда к мобильному устройству присоединены наушники</div> </div> <div class="post-card post-card--related"> <div class="post-card__thumbnail"><a href="https://service-play.ru/obzor-igry-dzhelli-dzhu-dlya-android/"><img width="335" height="220" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20335%20220'%3E%3C/svg%3E" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" data-lazy-src="https://service-play.ru/wp-content/uploads/2023/06/142-1-335x220.png"/><noscript><img width="335" height="220" src="https://service-play.ru/wp-content/uploads/2023/06/142-1-335x220.png" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" loading="lazy"/></noscript></a></div><div class="post-card__title"><a href="https://service-play.ru/obzor-igry-dzhelli-dzhu-dlya-android/">Обзор игры Джелли-Джу для Android</a></div><div class="post-card__description">В последние годы популярность мобильных игр резко возросла</div> </div> <div class="post-card post-card--related"> <div class="post-card__thumbnail"><a href="https://service-play.ru/luchshie-shahmatnye-prilozheniya-dlya-ios-i-android/"><img width="335" height="220" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20335%20220'%3E%3C/svg%3E" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" data-lazy-src="https://service-play.ru/wp-content/uploads/2023/06/31-1-335x220.png"/><noscript><img width="335" height="220" src="https://service-play.ru/wp-content/uploads/2023/06/31-1-335x220.png" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" loading="lazy"/></noscript></a></div><div class="post-card__title"><a href="https://service-play.ru/luchshie-shahmatnye-prilozheniya-dlya-ios-i-android/">Лучшие шахматные приложения для iOS и Android</a></div><div class="post-card__description">Нынешний читерский скандал в шахматном мире сейчас</div> </div> <div class="post-card post-card--related"> <div class="post-card__thumbnail"><a href="https://service-play.ru/chto-hotyat-uvidet-polzovateli-ot-android-5-0-key-lime-pie/"><img width="335" height="220" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20335%20220'%3E%3C/svg%3E" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" data-lazy-src="https://service-play.ru/wp-content/uploads/2023/06/131-1-335x220.png"/><noscript><img width="335" height="220" src="https://service-play.ru/wp-content/uploads/2023/06/131-1-335x220.png" class="attachment-reboot_small size-reboot_small wp-post-image" alt="" decoding="async" loading="lazy"/></noscript></a></div><div class="post-card__title"><a href="https://service-play.ru/chto-hotyat-uvidet-polzovateli-ot-android-5-0-key-lime-pie/">Что хотят увидеть пользователи от Android 5.0 Key Lime Pie</a></div><div class="post-card__description">ОС Google Android развивается, и по всему видимому</div> </div> </div></div> </div><!--.site-content-inner--> </div><!--.site-content--> <div class="site-footer-container "> <div class="footer-navigation fixed" itemscope itemtype="http://schema.org/SiteNavigationElement"> <div class="main-navigation-inner full"> <div class="menu-tehnicheskoe-menyu-container"><ul id="footer_menu" class="menu"><li id="menu-item-8" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-8"><a href="https://service-play.ru/pravoobladatelyam/">Правообладателям</a></li> <li id="menu-item-9" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-9"><a href="https://service-play.ru/politika-konfidentsialnosti/">Политика конфиденциальности</a></li> <li id="menu-item-480407" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-480407"><a href="https://service-play.ru/kontakty/">Контакты</a></li> </ul></div> </div> </div><!--footer-navigation--> <footer id="colophon" class="site-footer site-footer--style-gray full"> <div class="site-footer-inner fixed"> <div class="footer-bottom"> <div class="footer-info"> © 2024 Ваши гэджеты </div> <div class="footer-counters"><!-- Yandex.Metrika counter --> <script type="text/javascript" > (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date(); for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(95570298, "init", { clickmap:true, trackLinks:true, accurateTrackBounce:true, webvisor:true }); </script> <noscript><div><img src="https://mc.yandex.ru/watch/95570298" style="position:absolute; left:-9999px;" alt=""/></div></noscript> <!-- /Yandex.Metrika counter --></div></div> </div> </footer><!--.site-footer--> </div> <button type="button" class="scrolltop js-scrolltop"></button> </div><!-- #page --> <script>var pseudo_links = document.querySelectorAll(".pseudo-clearfy-link");for (var i=0;i<pseudo_links.length;i++ ) { pseudo_links[i].addEventListener("click", function(e){ window.open( e.target.getAttribute("data-uri") ); }); }</script><script type="text/javascript" id="reboot-scripts-js-extra"> /* <![CDATA[ */ var settings_array = {"rating_text_average":"\u0441\u0440\u0435\u0434\u043d\u0435\u0435","rating_text_from":"\u0438\u0437","lightbox_display":"1","sidebar_fixed":"1"}; var wps_ajax = {"url":"https:\/\/service-play.ru\/wp-admin\/admin-ajax.php","nonce":"d04f317552"}; /* ]]> */ </script> <script type="text/javascript" src="https://service-play.ru/wp-content/themes/reboot/assets/js/scripts.min.js" id="reboot-scripts-js"></script> <script type="text/javascript"> /*<![CDATA[*/ jQuery(document).ready(function($){ $('.link').replaceWith(function(){ var id = ( null != $(this).attr('id') ) ? ' id="' + $(this).attr('id') + '"' : '', target = ( null != $(this).attr('data-target') ) ? ' target="' + $(this).attr('data-target') + '"' : ' target="_blank"', title = ( null != $(this).attr('title') ) ? ' title="' + $(this).attr('title') + '"' : '', style = ( null != $(this).attr('style') ) ? ' style="' + $(this).attr('style') + '"' : '', rel = ( null != $(this).attr('data-rel') ) ? ' rel="' + $(this).attr('data-rel') + '"' : '', cl = ( null != $(this).attr('class') ) ? $(this).attr('class').replace('link','').trim() : ''; cl = ( '' != cl ) ? ' class="' + cl + '"' : ''; return '<a href="' + $(this).attr('data-link') + '" ' + title + id + cl + target + style + rel + ' >' + $(this).html() + '</a>'; }); }); /*]]>*/ </script> <script>window.lazyLoadOptions = [{ elements_selector: "img[data-lazy-src],.rocket-lazyload,iframe[data-lazy-src]", data_src: "lazy-src", data_srcset: "lazy-srcset", data_sizes: "lazy-sizes", class_loading: "lazyloading", class_loaded: "lazyloaded", threshold: 300, callback_loaded: function(element) { if ( element.tagName === "IFRAME" && element.dataset.rocketLazyload == "fitvidscompatible" ) { if (element.classList.contains("lazyloaded") ) { if (typeof window.jQuery != "undefined") { if (jQuery.fn.fitVids) { jQuery(element).parent().fitVids(); } } } } }},{ elements_selector: ".rocket-lazyload", data_src: "lazy-src", data_srcset: "lazy-srcset", data_sizes: "lazy-sizes", class_loading: "lazyloading", class_loaded: "lazyloaded", threshold: 300, }]; window.addEventListener('LazyLoad::Initialized', function (e) { var lazyLoadInstance = e.detail.instance; if (window.MutationObserver) { var observer = new MutationObserver(function(mutations) { var image_count = 0; var iframe_count = 0; var rocketlazy_count = 0; mutations.forEach(function(mutation) { for (var i = 0; i < mutation.addedNodes.length; i++) { if (typeof mutation.addedNodes[i].getElementsByTagName !== 'function') { continue; } if (typeof mutation.addedNodes[i].getElementsByClassName !== 'function') { continue; } images = mutation.addedNodes[i].getElementsByTagName('img'); is_image = mutation.addedNodes[i].tagName == "IMG"; iframes = mutation.addedNodes[i].getElementsByTagName('iframe'); is_iframe = mutation.addedNodes[i].tagName == "IFRAME"; rocket_lazy = mutation.addedNodes[i].getElementsByClassName('rocket-lazyload'); image_count += images.length; iframe_count += iframes.length; rocketlazy_count += rocket_lazy.length; if(is_image){ image_count += 1; } if(is_iframe){ iframe_count += 1; } } } ); if(image_count > 0 || iframe_count > 0 || rocketlazy_count > 0){ lazyLoadInstance.update(); } } ); var b = document.getElementsByTagName("body")[0]; var config = { childList: true, subtree: true }; observer.observe(b, config); } }, false);</script><script data-no-minify="1" async src="https://service-play.ru/wp-content/plugins/rocket-lazy-load/assets/js/16.1/lazyload.min.js"></script><script>function lazyLoadThumb(e,alt){var t='<img loading="lazy" src="https://i.ytimg.com/vi/ID/hqdefault.jpg" alt="" width="480" height="360">',a='<button class="play" aria-label="play Youtube video"></button>';t=t.replace('alt=""','alt="'+alt+'"');return t.replace("ID",e)+a}function lazyLoadYoutubeIframe(){var e=document.createElement("iframe"),t="ID?autoplay=1";t+=0===this.parentNode.dataset.query.length?'':'&'+this.parentNode.dataset.query;e.setAttribute("src",t.replace("ID",this.parentNode.dataset.src)),e.setAttribute("frameborder","0"),e.setAttribute("allowfullscreen","1"),e.setAttribute("allow", "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),this.parentNode.parentNode.replaceChild(e,this.parentNode)}document.addEventListener("DOMContentLoaded",function(){var e,t,p,a=document.getElementsByClassName("rll-youtube-player");for(t=0;t<a.length;t++)e=document.createElement("div"),e.setAttribute("data-id",a[t].dataset.id),e.setAttribute("data-query", a[t].dataset.query),e.setAttribute("data-src", a[t].dataset.src),e.innerHTML=lazyLoadThumb(a[t].dataset.id,a[t].dataset.alt),a[t].appendChild(e),p=e.querySelector('.play'),p.onclick=lazyLoadYoutubeIframe});</script> </body> </html>