溫馨提示×

如何在Android中啟用EasyFloat

小樊
87
2024-09-12 08:21:01
欄目: 編程語言

EasyFloat 是一個 Android 懸浮窗框架,可以輕松實現(xiàn)懸浮窗功能

  1. 添加依賴:

在項目的 build.gradle 文件中添加 EasyFloat 的依賴項:

dependencies {
    implementation 'com.github.princekin-f:EasyFloat:1.3.4'
}
  1. 添加懸浮窗權限:

在 AndroidManifest.xml 文件中添加以下權限:

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
  1. 請求懸浮窗權限:

在需要使用懸浮窗功能的 Activity 中,請求懸浮窗權限??梢允褂?EasyFloat 提供的 PermissionUtils 類進行權限請求:

import com.lzf.easyfloat.permission.PermissionUtils;

public class MainActivity extends AppCompatActivity {

    private static final int REQUEST_CODE = 100;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 請求懸浮窗權限
        PermissionUtils.requestPermission(this, REQUEST_CODE);
    }

    @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        if (requestCode == REQUEST_CODE) {
            if (PermissionUtils.checkPermission(this)) {
                // 權限已獲取,可以顯示懸浮窗
            } else {
                // 權限未獲取,提示用戶需要懸浮窗權限
                Toast.makeText(this, "需要懸浮窗權限", Toast.LENGTH_SHORT).show();
            }
        }
    }
}
  1. 創(chuàng)建并顯示懸浮窗:

使用 EasyFloat 提供的 FloatWindow 類創(chuàng)建并顯示懸浮窗:

import com.lzf.easyfloat.EasyFloat;
import com.lzf.easyfloat.enums.ShowPattern;
import com.lzf.easyfloat.enums.SidePattern;

public class MainActivity extends AppCompatActivity {

    // ...

    private void showFloatWindow() {
        EasyFloat.with(this)
                .setLayout(R.layout.float_window_layout) // 設置懸浮窗布局
                .setShowPattern(ShowPattern.ALL_TIME) // 設置懸浮窗顯示模式
                .setSidePattern(SidePattern.DEFAULT) // 設置懸浮窗貼邊模式
                .setDragEnable(true) // 設置懸浮窗是否可拖動
                .show(); // 顯示懸浮窗
    }
}
  1. 在適當?shù)臅r機隱藏或關閉懸浮窗:
// 隱藏懸浮窗
EasyFloat.hide(this);

// 關閉懸浮窗
EasyFloat.dismiss(this);

現(xiàn)在你已經(jīng)成功地在 Android 項目中集成了 EasyFloat 懸浮窗框架。你可以根據(jù)需要自定義懸浮窗的樣式和行為。更多關于 EasyFloat 的信息和用法,請參考官方文檔:https://github.com/princekin-f/EasyFloat

0