详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
详细可以访问仓库 HcUi: 重复创造Flutter 的轮子 在原有组件上拓展 展现出新的特性 (gitee.com)[https://gitee.com/half_city...
线性渐变 为了创建一个线性渐变,你需要设置一个起始点和一个方向(指定为一个角度)的渐变效果。并需要设置最少一个起始色和一个终止色 所以colors的参数长度至少为两个 基础语...
一. 为什么要封装打印类 虽然 flutter/原生给我们提供了日志打印的功能,但是超出一定长度以后会被截断Json打印挤在一起看不清楚堆栈打印深度过深多打印一些不需要的东西...
在网上翻了一圈发现并没有人贡献这方面的代码可能是技术含量太低了,我这里记录以下用到的工具 1.权限管理https://www.jianshu.com/p/35b37c0123...
图片间格式的转换等操作 图片文件转换成Base64 转换思路 File=>Uint8List =>Base64使用场景:有些接口需要多图片上传使用base64进行多组图片上传...
在实际任务中免不了对图片进行裁切 文件格式转换 图片的选取等操作 这里做一个记录1. Flutter 图片选择工具 image_picker[https://pub.flu...
1.首先在AndroidManifest或者ios的定义文件中先定义你需要使用到的权限.虽然是动态申请权限不过你也得在注册清单中注明. 2.这个插件目前给了可以申请的三十一个权限 其中安卓有25个 activityRecognition是安卓Q以上独有的 ios有21个 3. 权限可以单独一个一个申请 也可以组成列表一起申请 使用方法大同小异 4. 申请权限的流程就是 (1) 先查看你要申请权限的state 如果state是granted 那么就继续走后面流程 如果不是granted 那么就走流程(2),(2) 获取权限 [Permission.location,Permission.storage,].request(); 通过.request()弹出权限框 然后返回用户是否给了权限 5. Android和ios都有的判断条件是允许(granted)和拒绝(denied) ios独有的两个(restricted)活动限制(limited) Android独有的一个就是永久拒绝(permanentlyDenied) 6. openAppSettings() 是这个插件自己内部就有的方法 目的是跳转APP的设置 具体是不是机型都能成功跳转对应页面没做太多设置 不过可以自己设定相应方法 7.获取定位的权限和他的不太一样 需要分两步进行需要单独处理 8.有一个封装的工具类在文章的结尾Demo中:https://gitee.com/half_city/flutter_identification_photo/blob/master/lib/utils/permission_util.dart
Flutter 学习 之 权限管理 permission_handler 9.2.0官方文档地址 permission_handler[https://pub.flutter-io.cn/packages/permission_handler/install...
当然你如果BaseOption定义完以后没有需要更改的 比如访问头什么的信息 请求拦截器也可以不添加
Flutter 学习 之 DIO4.0 的封装dio是一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时、自定义适配器等...网址在...
dio的请求流程是 请求拦截器 >> 请求转换器 >> 发起请求 >> 响应转换器 >> 响应拦截器 >> 最终结果。
所以需要 一个访问的单例类 一个BaseOpton的定义类 还有一个API的集合 三个拦截器( 请求拦截器 相应拦截器 按需添加的缓存拦截器 ) 对于最终结果的处理 访问正确 对数据进行脱壳处理 转成通用类 如果访问失败抛出异常除了DIO自己本身的异常类以外按需定义两个异常类(鉴权失败和其他错误) 然后一个工具类对抛出的异常进行解析并返回对应的中文 .
Flutter 学习 之 DIO4.0 的封装dio是一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时、自定义适配器等...网址在...