Подтвердить что ты не робот

Android Плавающий Action Button API 19 (KitKat)

Мне нужно внедрить кнопку плавающего действия в соответствии с Руководством по дизайну Google на моем приложении для Android с API-интерфейсом 19.

Однако я бы знал, если некоторая встроенная библиотека поддержки (например, v4, v7, v13) поможет мне создать этот компонент без необходимости внешних зависимостей.

4b9b3361

Ответ 1

Недавно Google выпустил новую библиотеку поддержки на основе Руководство по дизайну материалов. Codepath детализирует те же компоненты в этот пост.

Библиотека уже может использоваться с Gradle, добавив следующую строку в build.gradle:

dependencies {
    ...
    compile 'com.android.support:design:25.3.1'
}

Это простой пример использования:

<android.support.design.widget.FloatingActionButton
      android:id="@+id/fab"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:src="@drawable/ic_add"
      android:layout_gravity="bottom|end" />

Подробнее Пример FloatingActionButton с библиотекой поддержки.

Ответ 2

Я бы знал, если некоторая встроенная библиотека поддержки (например, v4, v7, v13) поможет мне создать этот компонент без необходимости внешних зависимостей.

Нет никаких кнопок плавающего действия библиотеки поддержки (FAB). ИМХО, это ужасное решение не включать все связанные с материалом виджеты в библиотеку поддержки. В этом видео Чет Хаасе и Адам Пауэлл в основном говорят, что FAB очень легко воспроизводить, поэтому они не собираются включать его в какую-либо библиотеку поддержки. Поэтому вместо Google, создающего один набор виджетов материалов, который будет использоваться миллионами разработчиков, они предпочли бы миллионы разработчиков создавать миллионы различных реализаций этих виджетов. </rant>

Вы можете просто создать свой собственный FAB, расширив класс View. Вот пример от Github FAB, который не использует никаких внешних библиотек.

Ответ 3

Используйте для вас метод заставки FloatingActionButton

fab = view.findViewById(R.id.fab_hours);
fab.bringToFront();