base_lib_pub library

Classes

AESUtils
Name: aes_utils.dart
BaseColors
Name: dart
BaseDimens
Name: dart
BaseRoutes
Name: base_routes.dart
GetTicker
Name: getx_ticker.dart
GetxAnimationControllerMixin
Name: getx_animation_controller_mixin.dart
GlobalConst
Name: global_const.dart
HeroWidget
make hero better when slide out
HeroWidgetState
ImagePreviewLogic
ImagePreviewPage
KeepAliveWrapper
Name: keep_alive_wrapper.dart
ListFooterLogic
ListFooterView
MDialog
MDialogManager
Name: m_dialog.dart
MyBaseTrs
Name: lang.dart
MySalomonBottomBar
Name: nav.dart
SalomonBottomBarItem
A tab to display in a SalomonBottomBar
TestLogic
TestPage
TestState

Extensions

CommonExt on Object
Name: common_ext.dart
DateTimeFormat on DateTime
Name: datetime_ext.dart
ExtList on List<int>
GetMy on GetInterface
GlobalKeyExt on GlobalKey<State<StatefulWidget>>
ScrollControllerExt on ScrollController
StringExt on String

Constants

ansiColorBlue → const String
ansiColorCyan → const String
ansiColorGreen → const String
ansiColorMagenta → const String
ansiColorRed → const String
通过转义字符改变日志颜色
ansiColorReset → const String
重置
ansiColorYellow → const String
baseTrs → const MyBaseTrs
colorful → const bool
imgMaxSizeByByte → const int
返回图片获取结果 图片最大文件大小为1M

Properties

baseEnUS Map<String, String>
final
baseZhCN Map<String, String>
final
globalDio ↔ Dio
Name: network_utils.dart
getter/setter pair
isForceLog bool
日志开关
getter/setter pair
loadingSize double
Name: overlay_utils.dart
getter/setter pair
myDefaultDirPath String
Name: FileUtils.dart
getter/setter pair
toastBuilder TransitionBuilder
getter/setter pair
toastObserver NavigatorObserver
getter/setter pair

Functions

checkPermission({required Permission permission, OnPermissionCheck? onPermissionCheck}) Future<bool>
checkStoragePermission({OnPermissionCheck? onPermissionCheck}) Future<bool>
clickBack({dynamic result}) Future<bool>
点击返回
compareYMD(DateTime d1, DateTime d2) bool
比较年月日
compressAndGetImageFile({required File imageFile, required String targetPath, int maxSize = imgMaxSizeByByte}) Future<File?>
压缩图片
compressAndGetImageFilePath({required String imageFilePath, required String targetPath, int maxSize = imgMaxSizeByByte}) Future<String>
压缩图片
createDir(String path) → void
创建文件夹
createFile(String path) → void
创建文件
createImgName() String
deleteDirOrFile(String path) → void
删除文件夹及其内部文件
doDelay(int milliSec, VoidCallback callback) → void
Name: common_utils.dart
doDelayOn(Duration delay, VoidCallback callback) → void
延迟执行
doInterval(Duration interval, void callback(Timer? timer), {bool callOnStart = false}) Timer
定时循环执行
e({required dynamic msg, String tag = '', bool split = false, String? ansiColor}) → void
打印错误日志
exitApp() → void
退出APP
exitAppForce() → void
强行退出APP
formatIntMoney(int num) String
货币格式
formatMoney(double num) String
货币格式
get<T>(String path, {Map<String, dynamic>? params, Map<String, dynamic>? headers, String? contentType, ResponseType? responseType, CancelToken? cancelToken, Options? options, ProgressCallback? onSendProgress, ProgressCallback? onReceiveProgress, Duration? sendTimeout, Duration? receiveTimeout}) Future<Response<T>>
get请求
getBytes(String path) List
getFileContent(String path) → MultipartFile
获取文件内容
getLastDirInPath(String path) String
从路径中获取文件名
getNameInPath(String path) String
从路径中获取文件名
getRenderImage(GlobalKey<State<StatefulWidget>> gk) Future<Image?>
getRowCount(int length, int lengthPerRow) int
计算行数
getScreenHeight(BuildContext context) double
获取屏幕高度
getScreenSize(BuildContext context) Size
获取屏幕尺寸
getScreenWidth(BuildContext context) double
获取屏幕宽度
getStatusBarHeight(BuildContext context) double
获取状态栏高度
getStatusBarStyle({Color statusBarColor = BaseColors.cTransparent, Brightness iconBrightness = Brightness.light, Brightness barBrightness = Brightness.light}) SystemUiOverlayStyle
获得状态栏样式
hideKeyboard() → void
隐藏软键盘
i({required dynamic msg, String tag = '', bool split = false, String? ansiColor}) → void
打印信息日志
initBaseApp({dynamic enableLog = false, String? crashDefaultMsg, Color statusBarColor = Colors.transparent, Brightness iconBrightness = Brightness.light, Brightness barBrightness = Brightness.light, List<String>? unPopRoutes, bool initWeChat = false}) → void
Name: base_main.dart
initCrashHandler({String? msg, dynamic toastError = false}) → void
Name: crash_utils.dart
initDio({String baseUrl = '', Duration connectTimeout = const Duration(seconds: 10), Duration? receiveTimeout = const Duration(seconds: 30), bool isAddLogInterceptor = true}) → void
配置dio
initLog({bool enable = false}) → void
initMyDefaultDir() → void
应用文件根路径
initUi({Color statusBarColor = Colors.transparent, Brightness iconBrightness = Brightness.light, Brightness barBrightness = Brightness.light}) → void
initWechatAssetsPicker() → void
isEmail(String str) bool
isEmptyOrNull(String? str) bool
字符串判空
isLocalImage(String url) bool
listDir(String dirPath, {bool recursive = false, bool followLinks = true}) Stream<FileSystemEntity>
遍历文件夹
mAppBar() Widget
mAvatar({required String url, required double size, bool isLocal = false, double borderWidth = 1, Color borderColor = BaseColors.cYellow, BoxShape? shape, String? package}) Widget
头像框
mBackBtn() Widget
mBorder({Color borderColor = BaseColors.cGrayLine, double width = 0, BorderStyle style = BorderStyle.solid}) Border
获取共通border
mBorderSide({double width = 0.5, Color color = BaseColors.cGrayLine, BorderStyle style = BorderStyle.solid}) BorderSide
mDivider({Color color = BaseColors.cTransparent, double height = 8}) Widget
获取共通Divider
mDividerH({Color color = BaseColors.cTransparent, double height = 20, double width = 1.5, double margin = 0}) Widget
获取共通Divider
mFadeInView({Duration duration = const Duration(milliseconds: 600), Duration delay = Duration.zero, Tween<double>? tween, required Widget child}) Widget
fadeInView
mFormatDate({DateTime? time, List<String>? format, String daySeparator = '-', String middleSeparator = ' ', String timeSeparator = ':'}) String
日期时间格式化
mFormatDateFromStamp({required int stamp, List<String>? format, String daySeparator = '-', String middleSeparator = ' ', String timeSeparator = ':'}) String
日期时间格式化
mInkView({double? splashRadius, BoxShape splashShape = BoxShape.rectangle, Color? splashColor, Color? bgColor, Border? border, BorderRadius? borderRadius, required Callback onClick, required Widget child}) Widget
自定义点击波纹的按钮
mLine({Color color = BaseColors.cGrayLine, double height = 0.5}) Widget
分割线
mLineH({Color color = BaseColors.cGrayLine, double width = 1}) Widget
分割线
mLoadImageView(String url, {String placeholderImgPath = GlobalConst.defaultPlaceholderImg, String errorImgPath = GlobalConst.defaultErrorImg, double placeholderSize = 30, double errorSize = 30, BoxFit? fit = BoxFit.cover, Color borderColor = BaseColors.cGrayLine, Color? bgColor, double borderWidth = 0, BoxShape? shape, double radius = 0, BorderRadius? borderRadius, bool enableSlideOutPage = false, InitGestureConfigHandler? initGestureConfigHandler, ExtendedImageMode mode = ExtendedImageMode.none, Widget? loadingWidget, double minWidth = 0, double minHeight = 0, double? compressionRatio, String? package, Widget? errorWidget, bool enableFadeIn = true, Duration fadeInDuration = const Duration(milliseconds: 600), Duration timeLimit = const Duration(seconds: 30), Duration timeRetry = const Duration(seconds: 5), int retries = 3, bool cache = true}) Widget
加载网络图片或者本地文件图片
mProgressIndicator({bool isIosStyle = true, Color? color, double size = 20, double strokeWidthInAndroid = 4}) Widget
通用转圈
mRoot({required Widget child, WillPopCallback? onWillPop}) Widget
点击空白处关闭键盘
mSafeRoot({bool clickable = true, bool fullScreenScroll = false, bool showScrollbar = false, bool isCupertinoStyle = false, EdgeInsets? margin, required Widget child}) Widget
快速生成根视图 SafeArea(GestureDetector(CupertinoScrollbar(SingleChildScrollView)))
mShowDialog(Widget child, {String? id}) MDialog
mShowTip({bool dismissible = true, String title = '', String msg = '', String? id, List<Widget>? actions}) MDialog
mSimpleBoxDecoration({Color borderColor = BaseColors.cGrayLine, double borderWidth = 0, BorderStyle borderStyle = BorderStyle.solid, double borderRadius = 4, Color? solidColor, double? elevation, DecorationImage? image}) BoxDecoration
获取简单BoxDecoration
mText({required String msg, double fontSize = 15, FontWeight weight = FontWeight.normal, Color? color, TextAlign textAlign = TextAlign.start, int? maxLines = 1000, TextOverflow overflow = TextOverflow.ellipsis, double? lineHeightFactor = 1.3, FontStyle fontStyle = FontStyle.normal, Color? bgColor, TextStyle? style}) Widget
获取普通Text
mTextField({String? hint, int maxLines = 1, int minLines = 1, IconData? prefixIconData, TextEditingController? controller, int? maxLength, Color iconColor = BaseColors.cPrimaryColor, double fontSize = BaseDimens.dFontSizeNormal, double paddingHorizontal = 6, double paddingVertical = BaseDimens.dPadding, bool obscureText = false, TextInputAction? textInputAction, ValueChanged<String>? onSubmitted, FocusNode? focusNode, BoxBorder? border, double borderWidth = 0.5, TextInputType? keyboardType, List<TextInputFormatter>? formatters, bool isNumOnly = false, BoxDecoration? decoration, TextAlign textAlign = TextAlign.left, OverlayVisibilityMode clearButtonMode = OverlayVisibilityMode.editing, bool readOnly = false}) Widget
获取普通输入框
mWillPopScope({required Widget child, WillPopCallback? onWillPop}) Widget
双击退出
notify(String msg, {String title = '', int durationInSec = 2}) → void
onBuildFinished(FrameCallback firstFrameCallback, {FrameCallback? everyFrameCallback}) → void
widget build回调 @param firstFrameCallback: 第一帧完成回调 @param everyFrameCallback: 第二及以后帧完成回调
pickImage(BuildContext context, {int maxCount = 1, bool enableCamera = true, bool enableRecording = false, List<AssetEntity>? selectedList}) Future<List<AssetEntity>>
选择图片
post<T>(String path, {Object? data, Map<String, dynamic>? headers, String contentType = Headers.jsonContentType, ResponseType responseType = ResponseType.json, CancelToken? cancelToken, Options? options, ProgressCallback? onSendProgress, ProgressCallback? onReceiveProgress, Duration? sendTimeout, Duration? receiveTimeout}) Future<Response<T>>
post请求
printLog(String type, dynamic msg, {String tag = "", bool split = false, String? ansiColor}) → void
NSLog日志格式
randomNum(int max) int
获取随机数[0, max)
readFileToBase64Str(String path, {String? defaultStr}) Future<String>
从文件路径获取文件base64字符串
readFileToStr(String path, {String? defaultStr}) Future<String>
从文件路径获取文件内容
readImageFileToUIImage(String imgPath) Future<Image>
文件转图片
readImageToUnit8List(String imgPath) Future<Uint8List?>
realLog(String msg, String name) → void
saveDataToFile(String path, ByteData data) Future<File?>
保存数据为本地文件
saveImage2File(String path, Image? image) Future<File?>
saveImage2Gallery(Image? image, {bool isTransform2FilePath = true}) Future<String>
保存图片到相册
saveImageData2Gallery(ByteData? data, {bool isTransform2FilePath = true}) Future<String>
保存图片数据到相册
saveImageFile2Gallery(String imgPath, {bool isTransform2FilePath = true}) Future<String>
保存图片文件到相册
saveNetworkImageToPhoto(String url, {bool useCache = true}) Future<bool>
save network image to photo
setGlobalStatusBarStyle({Color statusBarColor = BaseColors.cTransparent, Brightness iconBrightness = Brightness.light, Brightness barBrightness = Brightness.light}) → void
Name: common_ui.dart
shareLocalData(Uint8List? data, {String? msg}) → void
shareLocalFile(String path, {String? msg}) → void
shareStr(String msg) → void
Name: share_utils.dart
showLoading(String msg, {VoidCallback? onClose, double pbSize = 36, Color pbColor = BaseColors.cWhite}) → CancelFunc
显示加载中 @param: msg 消息 @param: onClose 关闭方法回调 @return: 关闭方法
toast(String msg, {int durationInSec = 2}) → void
vibrate() → void
w({required dynamic msg, String tag = '', bool split = false, String? ansiColor}) → void
打印警告日志
writeToFile(String path, String data, {bool append = false}) Future<File>
写入到文件

Typedefs

MDialogActionCallback = bool Function()
MDialogBuilder = Widget Function(BuildContext context, AnimationController animationController)
OnPermissionCheck = void Function(bool granted)
Name: permission_utils.dart
OnPreviewIndexChanged = void Function(int index)
定义预览页页面切换回调