首页
/ 【亲测免费】 FloatingX 开源项目教程

【亲测免费】 FloatingX 开源项目教程

2026-01-16 09:43:06作者:苗圣禹Peter

项目介绍

FloatingX 是一个灵活且强大的悬浮窗解决方案,支持系统浮窗、应用内浮窗和局部浮窗。它提供了丰富的功能,如边缘吸附、回弹、自定义动画、位置保存、窗口化及分屏后位置修复等。FloatingX 支持 JetPack Compose,并且对 Kotlin 和 Java 都有良好的兼容性。

项目快速启动

添加依赖

首先,在项目的 build.gradle 文件中添加以下依赖:

dependencies {
    implementation 'io.github.petterpx:floatingx:2.2.4'
}

初始化悬浮窗

在需要使用悬浮窗的 Activity 或 Fragment 中,初始化并显示悬浮窗:

import io.github.petterpx.floatingx.FloatingX
import io.github.petterpx.floatingx.helper.FxScopeType

FloatingX.install {
    setContext(context)
    setLayout(R.layout.item_floating)
    setScopeType(FxScopeType.SYSTEM_AUTO)
}.show()

应用案例和最佳实践

系统浮窗

系统浮窗需要特殊权限,可以在 AndroidManifest.xml 中声明权限:

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />

应用内浮窗

应用内浮窗不需要特殊权限,可以直接在应用内显示:

FloatingX.install {
    setContext(context)
    setLayout(R.layout.item_floating)
    setScopeType(FxScopeType.APP)
}.show()

局部浮窗

局部浮窗可以在 ViewGroup、Fragment 或 Activity 中显示:

val scopeHelper = ScopeHelper.builder {
    setLayout(R.layout.item_floating)
}.build()

FloatingX.install(scopeHelper).show()

典型生态项目

FloatingX 可以与其他 Android 开源项目结合使用,例如:

  • JetPack Compose: 结合 JetPack Compose 实现现代化的 UI 开发。
  • RxJava: 使用 RxJava 处理悬浮窗的事件流。
  • Room: 结合 Room 数据库保存悬浮窗的位置信息。

通过这些组合,可以进一步扩展 FloatingX 的功能,实现更加复杂和强大的悬浮窗应用。

登录后查看全文
热门项目推荐
相关项目推荐