如您所见,我的按钮位于脚手架的主体内。但我有一个例外:
使用不包含脚手架的上下文调用Scaffold.of()
编辑:
我找到了解决这个问题的另一个办法。如果我们给Scaffold一个键,即GlobalKey,我们可以如下显示SnackBar,而无需将我们的身体包裹在Builder小部件中。返回Scaffold的小部件应该是有状态的小部件
_scaffoldKey.currentState.showSnackBar(snackbar);
发生此异常是因为您正在使用实例化了Scaffold的
我正在使用向google地图添加标记,我想在用户点击InfoTextWindow时显示一个新屏幕
我似乎找不到这样做的方法。有人知道吗
我添加标记的方式是:
mapController.addMarker(MarkerOptions(
position: LatLng(sr.lat, sr.lon),
icon: BitmapDescriptor.defaultMarker,
infoWindowText: InfoWindowText(
我试图在SharedReference中保存颜色,但它只有有限的数据类型(String、int、double等),我不知道
Future getColor() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
Color color = prefs.getString("color"); //error
return color;
}
Future setColor
标签: Flutter
flutter-layoutstatefulwidgetstatelesswidgetflutter-state
我有一个自定义小部件类:
class FancyButton extends StatefulWidget
{
final Function() onTap;
final String text;
final IconData icon;
bool enabled;
FancyButton({this.onTap, this.text, this.icon, this.enabled = true})
@override
_FancyButtonState cre
标签: Flutter
transformevent-listenergesturedetector
在使用ScrollView和Transform时,我遇到了一些事件处理问题。布局结构如下,ScrollView和Transform存在于Stack中
当在容器(Colors.cyan)中的扁平按钮外滚动时,我希望滚动视图,事件可以穿透到滚动视图
单击FlatButtonOn按开始工作。事实上,单击两次FlatButton后,无论您单击初始位置还是当前位置,它都不会再移动。FlatButton控件从大小范围内的初始位置移开,不再检测到单击事件,但我不理解。代码如下:
class EventList
因此,我提取了C:驱动器中的文件(而不是程序文件),并在Path变量中添加了C:\flatter\src\bin,当我在cmd中运行flatter--version时,它会给出一个错误。请帮助查看错误是什么。欢迎使用。请详述你的问题。包括错误消息等。
我正在尝试从firebase获取一些数据,然后将这些数据发送到firebase中的另一个请求。问题是,当我调用我的函数时,我得到了列表的打印,它在代码末尾是空的,但在那之后,我得到了应该在列表中的结果的打印。我认为这是因为forEach函数没有等待它完成。这里有代码和输出的照片。
我该怎么做才能让名单上的名字打印出来
Future <List<Map < dynamic, dynamic >>> getData() async {
List lists
我想用CloudFireStore在Flatter中创建旋转木马滑块。我创建了名为“slider”的CloudFireStore集合,我有两个字段,一个是“image”,另一个是“url”
现在,我需要在旋转木马滑块中对firestore集合进行流式处理,当用户单击图像时,需要启动url
我的旋转木马滑块代码
import 'package:carousel_slider/carousel_slider.dart';
import 'package:flutter/material.dart';
在执行一个操作(例如“保存”)后,用户将返回到应用程序中的另一个页面
我想在新页面上显示一个snackbar来确认操作,但不想显示用户是否在没有操作的情况下导航到那里。例如,如果用户保存“东西”,应用程序会将它们发送到“东西”主页并显示“保存的”snackbar,但如果用户以其他方式转到“东西”主页,我不希望“保存的”snackbar出现在那里
下面是我保存的面板上的代码,但目标页面不显示snackbar-无论我将snackbar放置在何处(导航之前或之后),它都不会执行snackbar
Fut
我刚刚开始使用flatter,在运行代码时遇到了这个问题
“引发了另一个异常:“MyApp”类型不是“无状态小部件”类型的子类型。”。
有趣的是,我的代码中甚至没有这个“无状态小部件”
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
State<StatefulWidget>
我正在尝试在Flatter中构建一个表单,请查看我迄今为止制作的屏幕图像:
关于本页,我有几个问题:
如何对齐下拉列表按钮(项目和任务),使其以相同的宽度拉伸,并使其图标位于相同的位置?还有,我怎样才能用某种边框来装饰它们呢
输入字段小部件,如开始/完成和日期,当您单击图标时,它将打开一个时间或日期选择器。我也希望当用户点击文本输入字段时,它会打开选择器,因此用户将无法手动编辑内容
当我点击持续时间和注释TextFields时,软键盘将覆盖这些字段。如何使视图在键盘打开时向上滚动,在键盘关闭时
这里我提到了我的checkbox代码。我是一个新手,所以我必须实现它的记忆我的功能
代码:
Container(
padding: EdgeInsets.all(10.0),
child: Column(
children: <Widget>[
new Checkbox(value: checkBoxValue,
activeColor: Colors.green,
onChanged:(bool newValue){
我正在尝试调用saveName,但未保存任何内容。此外,我还看到commit已被弃用,因此如何在SharedReferences
Future saveName(bool isloggedIn,String passwordval) async {
sharedPreferences = await SharedPreferences.getInstance();
sharedPreferences.setBool("is_logged_in ", isloggedIn);
我目前正在阅读软件包的示例代码:
//忽略\u文件:公共\u成员\u api\u文档
进口“包装:颤振/基础.dart”;
进口“包装:颤振/材料.省道”;
导入“包:provider/provider.dart”;
void main()=>runApp(MyApp());
带有ChangeNotifier的类计数器{
int _计数=0;
int get count=>\u count;
无效增量(){
_计数++;
notifyListeners();
}
}
类MyApp扩展了无状态小部
当我读到颤振的代码时。我在framework.dart中找到了一些类似的代码
Timeline.startSync('Build',参数:timelineWhitelistArguments)
Timeline.finishSync()
我在这个网站上找到了这个文件
但我仍然不明白这门课的目的是什么。它用于在Flatter开发工具中检查应用程序在时间轴上的性能
您可以在此处阅读更多信息:
已编辑
还发现了一篇关于使用Timeline在medium上评测Flatter应用程序的好文章。
我有这样的Json数据(当执行getdata.php时):
我需要在flatter中显示CarouselSlider小部件()的图像url。下面是我目前正在尝试做的部分(仍然没有解决)
类发起人Slider扩展StatefulWidget{
@凌驾
_赞助商SliderState createState()=>\u赞助商SliderState();
}
类\u发起人SliderState扩展状态{
未来的getSponsorSlide()异步{
最终响应=等待http.get(“getdata.
如何获取这种格式的时区偏移
+02:00
我尝试了DateTime.now().timeZoneOffset
但是这只给了我2:00:00.000000作为一个,你可以使用
但是,由于您需要非常特定的格式,因此可以使用使用Duration的函数来创建它。在hours:
String formattedTimeZoneOffset(日期时间){
字符串两位数(整数n){
如果(n>=10)返回“$n”;
返回'0$n';
}
最终持续时间=time.timeZoneOffset,小时=持续时间.
标签: Flutter
flutter-layoutflutter-animation
我在玩一些关于如何处理布局的理论。简单的版本是,我有一个容器,并且我允许它的大小由其父级部分物理化dbox确定。在方向更改时(有意计算),由partiallysizedbox计算的大小会正确更改,但它是瞬时的,而不是动画
我希望它能够设置大小更改的动画,但请注意,AnimatedSize不会按我需要的方式工作,因为它的行为实际上更像一个动画剪辑器。AnimatedSize的子对象实际上会立即更改,是AnimatedSize设置其大小的动画,以在其设置动画时显示更多或更少的子对象。这不是期望的行为
这就是我如何使用来自firebase的stream builder获取数据的方法
StreamBuilder<QuerySnapshot>(
stream: Firestore.instance.collection('profile').snapshots(),
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot){
如何将带参数的函数传递给Flatter中的子类
我当前的代码如下所示
parent.dart
class _ParentState extends State<Parent> {
int _currentIndex = 0;
Widget callPage(int currentIndex) {
switch (currentIndex) {
case 0:
return Child(
aFuncti
我想绕过DropdownButton打开的列表窗口的边缘,该窗口包含DropDownButtonItems
有什么想法吗?将其包装在一个容器中,然后使用“装饰”属性添加一个BoxEdition,您可以在其中指定borderRadius,如下所示:
Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10),
),
);
这会更改下拉按钮的形状,但不会更改列表本身的形状@萨维什Bhatnag
我正在尝试为我的应用程序构建一个发布包。它根本不工作,因为它只是退出。有什么不对劲吗
按照此处的说明操作:
命令应为:flatterbuildappbundle
(当然,您需要首先在build.gradle中设置keystore信息)如果运行:flatter build appbundle会发生什么
我有一个ScrollController连接到Listview,但当我滚动时,它会抛出一个异常:
@override
initState() {
super.initState();
_mainCategoriesScrollController = ScrollController();
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
_mainCategoriesScrollCon
我正在使用以下代码段尝试检索文件的修改时间:
import 'dart:io';
import 'package:image_picker/image_picker.dart';
final picker = ImagePicker();
final pickedFile = await picker.getVideo(source: ImageSource.gallery);
final file = File(pickedFile.path);
print("file modif
如果这是一个正常的函数,我会这样做
void test([dynamic arg=_noArgs])
{
if(arg==_noArg); // No argument was passed
else if(arg==null); // null was explicitly passed
else {} // handle the arg
}
const _noArgs = const Object(); // basically just create an instance
我想从主页导航到登录页面。我已经实现了一些代码。但这不是工作。运行代码时出错。MaterialPage路由(生成器:(上下文)=>LoginPage());此行出现错误。无论我试过多少次,我都无法解决这个问题。这是完整的代码段
return Scaffold(
appBar: new AppBar(
title: new Text("Home"),
backgroundColor: Colors.grey[500],
我正在使用flutter对CloudFireStore进行一些研究。目前我正在研究在云firestore中进行查询。我对如何进行查询有了一个基本的了解,比如在下面给出的数据库截图中:
第二个(一些愚蠢的东西)和第三个(一些好东西)项目属于“硬件”领域。。。。。所以,如果我想搜索一个项目的字段。。。。。我会这样做:
databaseReference.collection("Projects").where("Field",isEqualTo: "
错误=>
class DBHelper {
DBHelper._();
static final DBHelper _db = DBHelper._();
factory DBHelper() => _db;
static Database _database;
Future<Database> get database async {
if(_database != null) return _database;
_database = a
我一直在研究如何使用刷新指示器向API发出新请求,然后使用我的应用程序中的数据
我现在让刷新指示器工作,只有数据在有新数据时不刷新。我觉得我忽略了事情或做错了事情。明白这一点的人
我想在FutureBuilder中使用刷新指示器,但如果不能同时使用,那么当然也可以使用更好的方法
我将代码保持不变,因为数据是分组的。因此,我没有遗漏任何可能导致图像不清晰的内容。数据按日期分组,以便我可以使用StickyHeader将项目保留在日期下
如果编码太多,某些东西可以删除。请随意调整:-)
见图:
代码
我有5个不同的页面来获取用户信息。每个页面都有一个textfield控制器和一个用于导航到另一个页面的按钮,在最后一个页面上,我想使用用户的textfield控制器将用户在db的前几页提供的输入存储起来
如何获取前几页的textfield控制器,其中包含我将存储在数据库中的值?最简单的解决方案之一是绕过将保存所有数据的类的实例。可能是这样的:
class UserData {
String name;
String surname;
// ... other fields
}
cl
我今天更新了我的颤振,现在stack小部件中的溢出参数不再工作
Flutter 1.22.0-10.0.pre.252 • channel master • https://github.com/flutter/flutter.git
Framework • revision 78929661fb (5 hours ago) • 2020-09-18 08:08:30 -0700
Engine • revision 2abe69c608
Tools • Dart 2.10.0 (build 2.
我是一个新创建flatterweb项目的人,在尝试与部署flatterweb构建的同一服务器上托管的文件建立http连接时,我发现了第一个问题
代码如下:
Future<User> obtenerUsuario() async {
setState(() {
isLoading = true;
});
var url = "https://.../login.php";
final response = await
我想从Flatter应用程序打开一个电报机器人。我怎么做
Text('Join@SomeBot first,以电报形式获取应用程序结果!')
如何通过onTap文本打开窗口?我解决了插件的问题
onPressed: () => launch(
"https://www.telegram.me/SomeBot",
forceSafariVC: false)
我在一个类中有一个变量,但我想在所有类中都使用它。
在本例中,allJobs变量是在Muesnterboerse或MuensterboerseAAAngebote中声明的,我想在senddate()中使用它
类Muensterboerse扩展了无状态小部件{
var-allJobs=1;
@凌驾
小部件构建(构建上下文){
返回新材料PP(
debugShowCheckedModeBanner:false,
标题:“带MYSQL的颤振应用程序”,
主页:新建MyHomePage(),
);
}
我正在添加可用于颤振的材质图标。但当我添加时,它显示错误。
这是我的密码:
Icon(Icons.location_on_outlined, color: Colors.red, size: 20,),
以下是错误:
Error: Getter not found: 'location_on_outlined'.
注意:颤振材质库没有所有的轮廓图标。请参阅可用图标的完整列表:
但是,您可以使用一个包大纲\材料\图标
我正在尝试用flatter和Ethereum制作一个简单的去中心化应用程序。但我一直在犯这个错误。它工作得很好。请看一下我的代码和错误
我使用:
飘动
混合以太坊
MetaMask=>Rinkeby
Infua.io
问:为什么我会得到这个流浪者
坚固性
pragma solidity 0.6.6;
contract PKCoin{
int balance;
constructor() public {
ba
标签: Flutter
flutter-layoutz-indexgame-physics
我正在将游戏从windows phone迁移到Flitter纸牌游戏。我找不到在拖动后如何将卡保持在顶部的方法
堆栈顺序对于这样简单的操作来说太复杂和有问题,需要4个玩家激活,而不是激活的卡,桌上的卡,组合集重新排列:(在Windows phone中有一个带有ZIndex的矩形,我可以将其设置为屏幕上的任何矩形
我在《颤栗》中遗漏了一些类似的东西。我不能相信堆栈顺序是解决这个问题的唯一方法,因为它会使任何游戏开发变得不可能
我没有使用任何游戏引擎(可能这是个问题),但我觉得我不需要它,因为它不是
我已经为健康服务创建了一个定位器应用程序
我用下面的医院列表在地图上显示了医院的位置。最初,地图显示在50%的屏幕上,列表如下所示
不,我希望地图覆盖整个屏幕,滚动列表用填充物占据页面的下半部分
我试着把它们叠起来,但失败了
我设法让地图覆盖了整个屏幕,但列表不再显示
我希望它清楚。有人来帮忙
没有错误,但不会显示可滚动列表
import 'package:flutter/material.dart';
import 'package:flutter_rating_bar/flutter_ra
标签: Flutter
flutter-testwidget-test-flutter
我尝试在我的项目中使用widget测试,测试工作正常,直到我在实际页面中使用http请求,我认为它忽略了请求
final account = await http.post(
'http://10.0.2.2:5000/LogIn',
headers: <String, String>{
'Content-Type': 'application/json; charset=
我正在使用内置redux支持的样板颤振应用程序模板,以及使用flatter\u本地化和intl包的希伯来文RTL定向
整个应用程序,以及我创建的每个新小部件都有一个本地RTL方向性
我有一个文本输入字段来获取用户电话号码。我希望这个输入字段,以及它的所有样式和内部功能以LTR的方式运行。这也适用于我可能有的其他输入字段,比如电子邮件(总是用英语)
似乎在由appintl配置确定的总体方向性和我试图“强制”我的文本字段以专门交换其行为的新方向性小部件之间存在冲突:
我需要在我的Flatter应用程序中添加带有Youtube播放器的Youtube播放列表。我想添加多个播放列表。当我将视频上传到youtube时,我的Flitter应用程序将自动显示视频
我看过一些教程,人们使用hereku服务器获取youtube api到Flatter应用程序。但他们只使用一个播放列表。这是你的电话号码
你能告诉我如何在我的应用程序中添加多个播放列表吗。
谢谢:)我想你可以试试这两个软件包的组合:
:
使用此软件包,您可以获取播放列表中的所有视频,并且(直接通过Youtube
当我使用flatter run命令时,它显示以下消息:
Multiple devices found:
Chrome (web) • chrome • web-javascript • Google Chrome 88.0.4324.146
Edge (web) • edge • web-javascript • Microsoft Edge 86.0.622.51
[1]: Chrome (chrome)
[2]: Edge (edge)
Please choose one (To q
我需要使用某个人的库并进行一些更改,因此我做到了:
第一步:用叉子叉他的图书馆
第二步:git克隆库\在GitHub上命名“我的分叉路径”
第三步:我输入了pubspec:
day_night_time_picker:
git:
url: https://github.com/someone/day_night_time_picker
第四步:我做了所有的改变
第五步,我需要将我的新更改拉入GitHub存储库,我应该怎么做?
如果我做错了任何一步,请告诉我。你是对的
在
我正在尝试使用垂直页面视图创建一个月及其日期的列表,但不行,因为月份的大小不尽相同,并且列表视图不允许我轻松设置默认位置。有没有一种我没有想到的好方法来实现这一点?因此我找到了一种方法,它可以让我做我想做的事情,向任何方向滚动,然后跳转到某个位置:)
如何在循环中使用Blocbuilder更改状态
blocbuilder只更改最后一个索引的状态。
首先。。我在这里做的是使用blocbuilder获取项目列表,然后使用列表(产品id)使用产品id使用bloc获取产品映像,但bloc只使用最后一个索引或最后一个产品id。如果我打印出ID,它可以找到但不获取所有的产品图像,只是最后一个图像
Widget _loadPageCart(state, context) {
List<CartHelper> carts = state.ge
我最近构建了一个发布版本,在Android Play Store上进行测试。问题是我不能让它回到调试模式。当我尝试在调试模式下启动时,控制台上会显示以下消息:
Launching lib\main.dart on SM P585 in release mode...
Running Gradle task 'assembleRelease'..
这就是我的build.gradle文件的外观:
def localProperties = new Properties()
def localPro
我正在使用图像选择器:^0.7.5+2。我的颤振版本是(2.0.5)。在我使用相机拍照后,应用程序将重新启动。但是如果我从画廊拿到照片没问题。我已经添加了相机许可。有人知道如何解决这个问题吗?也许你正在使用其他软件包images@Fatimaayaa不,我只使用图像选择器。你应该在控制台中得到一些错误。如果未打开终端并键入adb logcat,然后使用该应用程序。当应用程序崩溃时,您应该会看到一些错误文本。等等,您似乎正在使用空安全版本的image picker,但您的Flatter不是空安全的
我是新来的颤振,我想在颤振的TextformField中创建一个图标和文本的下拉列表。像银行图标和它的名字。请看截图,并建议我任何代码。先谢谢你。请帮忙
可能使用DropdownButton类
在文档页面上,您可以看到一个不包含图标的示例代码
您可以通过更改items参数将图标添加到下拉列表项中,使其有一行包装图标和文本小部件
见:
项目:[“一”、“二”、“免费”、“四”]
.map((字符串值){
返回下拉菜单项(
价值:价值,
孩子:排(
儿童:[
图标(Icons.close),
文本(
通过运行此命令
flutter test test/widget_tests/rider/home/component/direction_search_fields_test.source.dart
我试图从文件本身内部获取字符串路径“test/widget\u tests/rider/home/component/direction\u search\u fields\u test.source.dart”
我试过了
final dir = Platform.script.path;
我想知道在RevenueCat中付款时是否可以选择多个包裹。我现在就是这样做的:
Offerings offerings = await Purchases.getOfferings();
for(int i = 0; i < allPackages.length; ++i)
{
print("Currently purchasing package: " + allPackages[i].name);
await Purchases.purchasePac