当我在文件中设置Image并在资产中设置它时,我对flutter < code > image . assets 有一个问题,如下所示:
`颤振:使用材质设计:真实资源:
当我把它放在代码中时:
Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset(
"images/facebook.png"
),
Text(
'$_counter',
style: Theme.of(context).textTheme.display1,
),
],
),
),
并运行它,它运行良好,但我第二次运行代码时,它不显示,这是我得到的错误:
I/颤振 (4784): ═══ 图像资源服务捕获的异常 ╞═════════════════════════════════════════════════ I/颤振 (4784):解析图像时抛出以下断言:I/颤振 (4784):无法加载资产:资产清单.json . . .I/flutter ( 4784): #381 RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:969:5) I/flutter ( 4784): #382 RenderObjectToWidgetAdapter.attachToRenderTree.(package:flutter/src/widgets/binding.dart:915:17)I/flutter ( 4784): #383 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2328:19) I/flutter ( 4784): #384 RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:914:13) I/flutter ( 4784): #385 WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:795:7) I/flutter ( 4784): #386 runApp (package:flutter/src/widgets/binding.dart:845:7) I/flutter ( 4784): #387 main (package:flutter_app/main.dart:4:16) I/flutter( 4784): #388 _runMainZoned..(dart:ui/hooks.dart:229:25)I/颤振 ( 4784): #393 _runMainZoned.(dart:ui/hooks.dart:221:5)I/颤振 ( 4784): #394
_startIsolate.(dart:isolate-patch/isolate_patch.dart:305:19)I/颤振 ( 4784): #395 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:172:12) I/颤振 ( 4784): (从包 dart:异步省略 7 帧) I/颤振 ( 4784): 图像提供者: AssetImage(捆绑: 空, 名称: “images/facebook.png”) I/颤振 ( 4784): 映像配置: 映像配置(捆绑: 平台资产捆绑包#b5447(), 设备像素比率: 1.5, I/颤振 ( 4784): 区域设置: en_US, 文本方向: 文本方向.ltr, 平台: android) I/颤振 ( 4784): ════════════════════════════════════════════════════════════════════════════════════════════════════
确保在pubspec.yaml中使用2或4个空格(避免制表符)作为缩进。
你的pubspec.yaml一定是这样的
flutter:
uses-material-design: true
assets:
- images/facebook.png
不是这样的
flutter:
uses-material-design: true
assets:
- images/facebook.png # error
或者像这样
flutter:
uses-material-design: true
assets:
- images/facebook.png # also error
在您的终端中运行< br > < code > flutter clean < br > < code > flutter pub get < br >
我的代码:
import 'package:flutter/material.dart';
import 'dart:io';
import 'package:image_picker/image_picker.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
// This is the theme of your application.
//
// Try running your application with "flutter run". You'll see the
// application has a blue toolbar. Then, without quitting the app, try
// changing the primarySwatch below to Colors.green and then invoke
// "hot reload" (press "r" in the console where you ran "flutter run",
// or simply save your changes to "hot reload" in a Flutter IDE).
// Notice that the counter didn't reset back to zero; the application
// is not restarted.
primarySwatch: Colors.blue,
),
home: MyHomePage(title: 'myApp'),
);
}
}
class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
File imageFile;
int _counter = 0;
Color red = Colors.red;
_incrementCounter() async{
var picture = await ImagePicker.pickImage(source: ImageSource.camera);
this.setState(() {
// This call to setState tells the Flutter framework that something has
// changed in this State, which causes it to rerun the build method below
// so that the display can reflect the updated values. If we changed
// _counter without calling setState(), then the build method would not be
// called again, and so nothing would appear to happen.
imageFile = picture;
_counter++;
print("work");
});
}
@override
Widget build(BuildContext context) {
// This method is rerun every time setState is called, for instance as done
// by the _incrementCounter method above.
//
// The Flutter framework has been optimized to make rerunning build methods
// fast, so that you can just rebuild anything that needs updating rather
// than having to individually change instances of widgets.
return Scaffold(
appBar: AppBar(
// Here we take the value from the MyHomePage object that was created by
// the App.build method, and use it to set our appbar title.
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image.asset(
"images/facebook.png"
),
Text(
'$_counter',
style: Theme.of(context).textTheme.display1,
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: _incrementCounter,
tooltip: 'Increment',
child: Icon(Icons.add),
), // This trailing comma makes auto-formatting nicer for build methods.
);
}
}
我的pubspec.yaml:
name: flutter_app
description: A new Flutter application.
# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
image_picker:
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
dev_dependencies:
flutter_test:
sdk: flutter
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter.
flutter:
uses-material-design: true
assets:
- images/
# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/assets-and-images/#resolution-aware.
# For details regarding adding assets from package dependencies, see
# https://flutter.dev/assets-and-images/#from-packages
# To add custom fonts to your application, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
# fonts:
# - family: Schyler
# fonts:
# - asset: fonts/Schyler-Regular.ttf
# - asset: fonts/Schyler-Italic.ttf
# style: italic
# - family: Trajan Pro
# fonts:
# - asset: fonts/TrajanPro.ttf
# - asset: fonts/TrajanPro_Bold.ttf
# weight: 700
#
# For details regarding fonts from package dependencies,
# see https://flutter.dev/custom-fonts/#from-packages
检查这个
assets:
- images/facebook.png
确保你的空间与这样完全相同
flutter:
[2 whitespaces or 1 tab]assets:
[4 whitespaces or 2 tabs]- images/facebook.png
每个空间都很重要
我想在GridView中显示图像列表。但我做不到。我想知道资产中图像列表的数据类型,以及构造函数在这种情况下的帮助。我刚刚开始学习颤振,我不知道如何使用它。
我想显示图像,但不知道该怎么做。我不知道是必须安装一些库文件,还是简单地安装就可以了。实际上我想做图像处理,但首先我必须接受图像输入并显示图像,然后我可以得到图像处理的效果作为输出,并决定它(算法)是否正确。我只安装了eclipse。我也在谷歌上搜索过,但是无论他们建议什么都不管用。要么我得装点什么,要么不装。 我已经尝试了以下代码: 它只是显示一个图形窗口,但不能显示图像“bishnu.jpg”
它将我带到图库以选择图像,但未显示在应用程序中,当单击上传按钮时,它只是一个空白图像视图 < li >我的Java代码 < li>XML代码 运行时显示此错误 java.lang.IllegalArgumentException:uri不能为空 以下两处给出错误的行显示了uri错误
问题内容: 我有点卡住。为什么不做这项工作?我只是收到一条错误消息: java.lang.NoSuchMethodError:主要 线程“主”中的异常 问题答案: main需要是静态的,并且必须具有String []而不是String的参数。 为了解决这个问题,将所有东西都放在构造函数中,例如
我创建了一个动态web项目,以便通过Servlet显示JSP(我不能使用任何类似Spring的框架…)。默认情况下,我构建的类放在Build/classes中,因此在我将输出文件夹更改为WebContent/WEB-INF/classes后,我的应用程序运行良好。之后,我将该项目转换为Maven项目。(我不记得我上次使用servlet/JSP时需要更改输出文件夹,那是3年前!)。 无论如何,现在我
我正在创建一个图像库,在单击时显示图像的模式和一些附加信息。数据是从嵌入的json字符串中提取的。该模式在一个大框架中显示正确的图像,但也显示下面的其他图像。如何防止显示其他图像? 非常感谢! 这是JSON: 这是HTML: 这将JSON放在div中: 这就是模态: var modal=文档。getElementById('myModal');