Я полагаю, что вы видели новые рекомендации по дизайну Android с новой «плавающей кнопкой действия», также называемой «FAB»
Например, эта розовая кнопка:
Мой вопрос звучит глупо, и я уже много чего перепробовал, но как лучше всего поставить эту кнопку на пересечении двух макетов?
В приведенном выше примере эта кнопка идеально расположена между тем, что мы можем представить как ImageView и относительный макет.
Я уже пробовал много твиков, но я убежден, что есть правильный способ сделать это.
Ответы:
Лучшая практика:
compile 'com.android.support:design:25.0.1'
в файл GradleCoordinatorLayout
как корневой вид.layout_anchor
в FAB и установить его на вид сверхуlayout_anchorGravity
в FAB и установите для него:bottom|right|end
источник
CoordinatorLayout
иlayout_anchor
иlayout_anchorGravity
особенности, как та , которую он использует, futuresimples .CoordinatorLayout
подход с этой библиотекой, посмотрите . И есть также вилка для более старых версий.Похоже, что самый чистый способ в этом примере:
Пример адаптирован из реализации Shamanland, используйте любой FAB по вашему желанию. Предположим, что FAB имеет высоту 64dp, включая тень:
источник
FAB
по futuresimple - это довольно просто , чтобы добавить и использовать, наслаждайтесь!Вы можете импортировать пример проекта Google в Android Studio, нажав Файл> Импортировать образец ...
Этот образец содержит представление FloatingActionButton, которое наследуется от FrameLayout.
Редактировать С помощью новой библиотеки проектирования поддержки вы можете реализовать ее, как в следующем примере: https://github.com/chrisbanes/cheesesquare
источник
С AppCompat 22 FAB поддерживается для старых устройств.
Добавьте новую библиотеку поддержки в ваш build.gradle (приложение):
Тогда вы можете использовать его в своем XML:
Для использования
elevation
иpressedTranslationZ
свойствapp
необходимо пространство имен , поэтому добавьте это пространство имен в макет:xmlns:app="http://schemas.android.com/apk/res-auto"
источник
app
пространстве именТеперь это часть официальной библиотеки поддержки дизайна.
В твоем gradle:
http://developer.android.com/reference/android/support/design/widget/FloatingActionButton.html
источник
Попробуйте эту библиотеку ( javadoc здесь ), минимальный уровень API равен 7:
Он предоставляет один виджет с возможностью его настройки с помощью Theme, XML или Java-кода.
Это очень просто в использовании. Есть в наличии
normal
иmini
реализация по шаблону Promoted Actions .Попробуйте скомпилировать демо-приложение . Есть исчерпывающий пример: светлые и темные темы, используя с
ListView
, выровнять между двумя представлениями .источник
Вот еще одна бесплатная библиотека Floating Action Button для Android . Он имеет много настроек и требует SDK версии 9 и выше
Полное Демо Видео
источник
Сохраняйте это простым Добавление плавающей кнопки действия с помощью TextView, предоставляя закругленный фон XML. - Добавить компиляцию
com.android.support:design:23.1.1
в файл GradleКруг Xml
Макет XML это
Нажмите здесь, чтобы увидеть, как это будет выглядеть
источник
Добавьте это в ваш файл Gradle
Это к вашему Activity_main.xml
Вы можете найти полный пример проекта Android Studio для загрузки на http://www.ahotbrew.com/android-floating-action-button/
источник
здесь работает код.
я использую appBarLayout, чтобы закрепить плавающую кнопку ActionActionButton.надеюсь, что это может быть полезным.
XML-код
Теперь, если вы вставите код выше. вы увидите следующий результат на вашем устройстве.
источник