// Author: fengshengxiong // Date: 2024/5/8 // Description: 收藏数据 import 'package:now_wallpaper/common/storage/hive_storage.dart'; import 'package:now_wallpaper/models/wallpaper_model.dart'; class FavoriteData { /// 私有构造函数 FavoriteData._(); /// 静态常量用于保存类的唯一实例 static final FavoriteData _instance = FavoriteData._(); /// 工厂构造函数返回类的唯一实例 factory FavoriteData() { return _instance; } /// 声明盒子 /// 注意, main函数中这个盒子已经打开, 可以进行存储操作 final _box = getFavoriteBox(); /// 获取壁纸 List getWallpaperData() { return _box.values.toList(); } /// 存储壁纸 Future setWallpaperData(WallpaperData wallpaperData) async { return await _box.add(wallpaperData); } /// 删除壁纸 Future delete(index) async { await _box.deleteAt(index); await _box.flush(); } /// 删除所有壁纸 Future clear() async { await _box.clear(); await _box.flush(); } }