EasyFloat 是一个用于在 Android 应用中创建悬浮窗口的库。要设置 EasyFloat 的透明度,您需要使用 WindowManager.LayoutParams 类来设置背景透明度。以下是一个简单的示例:
- 首先,确保您已经在项目的 build.gradle 文件中添加了 EasyFloat 的依赖项:
dependencies { implementation 'com.github.shadowsocks:easyfloat:1.0.0' }
- 在您的 Activity 或 Fragment 中,初始化 EasyFloat 并设置悬浮窗口的布局文件:
import com.chad.library.easyfloat.EasyFloat; import com.chad.library.easyfloat.layout.FloatingWindowLayout; // ... @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); FloatingWindowLayout floatingWindowLayout = findViewById(R.id.floating_window_layout); EasyFloat.with(this) .setView(floatingWindowLayout) .setWidth(ViewGroup.LayoutParams.WRAP_CONTENT) .setHeight(ViewGroup.LayoutParams.WRAP_CONTENT) .setGravity(Gravity.TOP | Gravity.START) .setMoveWithScroll(true) .build(); }
- 要设置悬浮窗口的背景透明度,请使用以下代码:
import android.graphics.Color; import android.view.WindowManager.LayoutParams; // ... private void setFloatingWindowOpacity(float opacity) { WindowManager.LayoutParams layoutParams = floatingWindowLayout.getLayoutParams(); layoutParams.alpha = opacity; floatingWindowLayout.setLayoutParams(layoutParams); }
- 在需要设置透明度的地方调用
setFloatingWindowOpacity()
方法,传入一个介于 0.0f(完全透明)和 1.0f(完全不透明)之间的值:
// 设置悬浮窗口透明度为 0.5(半透明) setFloatingWindowOpacity(0.5f);
这样,您就可以根据需要设置 EasyFloat 悬浮窗口的透明度了。