介绍
塔庙的每次在关于或登录页面需要用到logo都需要复制一个资源图到flutter的assets里面,下次改logo了又可能遗漏,干脆直接复用桌面的logo,但是找了一大圈都没人这样搞,好吧,自己动手,你们足食。
flutter_get_native_icon 插件出来了。
用法
- 导入插件到项目 打开项目的 pubspec.yaml
yaml 代码解读复制代码dependencies:
flutter_get_native_icon: ^0.0.3
^0.0.3
的话你们可以去
pub-web.flutter-io.cn/packages/fl…
看看最新版本是什么就写什么。
- 到dart文件导入包
dart 代码解读复制代码import 'package:flutter_get_native_icon/flutter_get_native_icon.dart';
- 使用 然后就简单了,直接用
less 代码解读复制代码@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('App Icon Display'),
),
body: Center(child: NativeAppIconWidget()),
);
}
注意
别用 icons_launcher 去生成icon,生成之后是无法显示出组件的,具体看github.com/mrrhak/icon… 等作者修复。
推荐使用flutter_launcher_icons
属性
我就不翻译了,dddd【懂的都懂】
width
: The width of the icon.height
: The height of the icon.fit
: How the icon should be inscribed into the space allocated during layout.colorBlendMode
: The blend mode applied to the icon.color
: The color to use when drawing the icon.opacity
: The opacity to apply to the icon.alignment
: How to align the icon within its bounds.
获取桌面的app名字
因为package_info_plus插件有了就不额外处理了。
dart 代码解读复制代码 Future<void> _loadAppInfo() async {
PackageInfo packageInfo = await PackageInfo.fromPlatform();
setState(() {
appName = packageInfo.appName;
});
}
完整demo
dart 代码解读复制代码import 'package:flutter/material.dart';
import 'package:flutter_get_native_icon/flutter_get_native_icon.dart';
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('App Icon Display'),
),
body: Center(child: NativeAppIconWidget()),
);
}
}
void main() {
runApp(MaterialApp(
home: MyHomePage(),
));
}
开源地址
里面有demo,可以直接运行,环境flutter 3.24.3
效果图
最后一句
flutter candies牛逼
评论记录:
回复评论: