我试图添加一个未来(选择图标),所以我使用了这个包:
import 'package:flutter_iconpicker/flutter_iconpicker.dart';
我甚至在一个新的项目中--这段代码--也使用它作为源代码pub.dev。
import 'package:flutter/material.dart';
import 'package:flutter_iconpicker/flutter_iconpicker.dart';
void main() {
runApp(
const MaterialApp(
home: HomeScreen(),
),
);
}
class HomeScreen extends StatefulWidget {
const HomeScreen({Key? key}) : super(key: key);
@override
_HomeScreenState createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
Icon? _icon;
_pickIcon() async {
IconData? icon = await FlutterIconPicker.showIconPicker(context,
iconPackModes: [IconPack.cupertino]);
_icon = Icon(icon);
setState(() {});
debugPrint('Picked Icon: $icon');
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
ElevatedButton(
onPressed: _pickIcon,
child: const Text('Open IconPicker'),
),
const SizedBox(height: 10),
AnimatedSwitcher(
duration: const Duration(milliseconds: 300),
child: _icon ?? Container(),
),
],
),
),
);
}
}
它显示了这些错误:
/C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_iconpicker-3.1.4+1/lib/IconPicker/Packs/Material.dart:1230:25: Error: Member not found: 'class__sharp'.
'class__sharp': Icons.class__sharp,
^^^^^^^^^^^^
/C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_iconpicker-3.1.4+1/lib/IconPicker/Packs/Material.dart:1231:27: Error: Member not found: 'class__rounded'.
'class__rounded': Icons.class__rounded,
^^^^^^^^^^^^^^
/C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_iconpicker-3.1.4+1/lib/IconPicker/Packs/Material.dart:1232:28: Error: Member not found: 'class__outlined'.
'class__outlined': Icons.class__outlined,
^^^^^^^^^^^^^^^
/C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_iconpicker-3.1.4+1/lib/IconPicker/iconPicker.dart:47:20: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
- 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('/C:/src/flutter/packages/flutter/lib/src/widgets/binding.dart').
package:flutter/…/widgets/binding.dart:1
WidgetsBinding.instance!.addPostFrameCallback((_) {
^
3
FAILURE: Build failed with an exception.
* Where:
Script 'C:\src\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 1156
* What went wrong:
Execution failed for task ':app:compileFlutterBuildDebug'.
> Process 'command 'C:\src\flutter\bin\flutter.bat'' finished with non-zero exit value 1
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 11s
Exception: Gradle task assembleDebug failed with exit code 1
即使它不会在模拟器上显示任何内容,上面的代码就是我上面提到的源代码的示例,它不起作用,而且我按照他在节(安装)中描述的并且仍然不起作用的说明去做了,有人有解决这个问题的方法吗?
发布于 2022-07-16 09:58:16
看来插件需要升级了!
解决方案:如果您不使用/需要这三个图标,您可以从本地c驱动器路径中删除/注释这三个图标,错误地显示了这三个图标。
并添加null check运算符(!)显示在错误中的错误行。
注意:在插件中进行本地更改将使应用程序在您的终端运行,如果您共享代码,他们需要执行上述步骤来运行该应用程序。
谢谢!!
发布于 2022-07-16 10:18:48
这是一个已知的问题,flutter_iconpicker
和新的颤振版本3.0。
在官方存储库问题中有一个有待解决的问题。转录如下:
打开
YOUR_PC/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_iconpicker-3.1.4+1/lib/IconPicker/Packs/Material.dart
文件,搜索并注释包含、class_sharp、class_rounded、class_outlined和重建项目的行。
https://stackoverflow.com/questions/73006403
复制相似问题