每当我在两个或多个表单之间滚动时,我都会不断收到此错误,当我更改此行时,错误就解决了:_SiteFormState createState() => state; 到 _SiteFormState createState() => 新 _SiteFormState; 但我想保留表单验证的状态,我怎样才能做到这一点?
这是我的代码:
import 'dart:ui';
import 'package:flutter/material.dart';
import 'package:xperience/models/site.dart';
import 'package:xperience/models/category.dart';
import 'package:string_validator/string_validator.dart';
typedef OnDelete();
class SiteForm extends StatefulWidget {
final ManageSiteModel site;
_SiteFormState state = new _SiteFormState();
final OnDelete onDelete;
SiteForm({Key key, this.site, this.onDelete}) : super(key: key);
@override
_SiteFormState createState() => state;
bool isValid() => state.validate();
}
class _SiteFormState extends State<SiteForm> {
@override
void dispose() {
super.dispose();
}
@override
void initState() {
super.initState();
}
final form = new GlobalKey<FormState>();
bool …Run Code Online (Sandbox Code Playgroud) 我想在多部分请求中发送 ManageTagModel 列表以及其他模型和文件。
我不确定如何发送此模型列表..
这是我用于发送不带列表的多部分请求的代码:
var uri = Uri.parse(...);
final request = http.MultipartRequest('Post', uri);
request.fields['Id'] = '3';
request.fields['Name'] = siteModel.name;
request.fields['MapAddress'] = siteModel.mapAddress;
request.fields['Country'] = siteModel.country;
request.fields['City'] = siteModel.city;
request.fields['CategoryNb'] = siteModel.categoryNb;
request.fields['UserId'] = userId;
request.fields['Caption'] = caption;
for (File i in
multipleFiles) {
final mimeTypeData =
lookupMimeType(i.path, headerBytes: [0xFF, 0xD8]).split('/');
print("IMAGE: " + i.path);
// Attach the file in the request
final file = await http.MultipartFile.fromPath('files', i.path);
print(mimeTypeData[0] + " mimeTypeData[0]");
print(mimeTypeData[1] + " mimeTypeData[1]");
request.files.add(file);
Run Code Online (Sandbox Code Playgroud)
这是我的模型:
import 'dart:convert'; …Run Code Online (Sandbox Code Playgroud) 我有一个图像,我想在上面放置小图像。我已经有了这些图像相对于原始图像的位置(宽度、高度、topLeftX、topLeftY、bottomRight..)。
我无法相对于图像放置这些小图像(由下面所附示例中的蓝色框表示)。它们始终相对于整个屏幕定位。
这是我尝试过的:
Stack(
children:[
Positioned(
top: 245,
left: 43,
width: 200,height: 200,child:Container(color:Colors.blue)),
Container(
child:PhotoView(imageProvider: AssetImage("lib/assets/3D_example_2.png"),
controller: controller,
)),])
Run Code Online (Sandbox Code Playgroud)
如何相对于图像放置图像(矩形)?我还想相对于原始图像缩放这些图像的宽度和高度,并允许它们在缩放时随原始图像一起移动。
知道如何做到这些吗?
谢谢!