问题标签 [flutter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
flutter - testWidgets 方法中“异步”的原因是什么?
我能找到的每个小部件测试示例都让您编写带有签名的方法testWidgets('name of the test', (WidgetTester tester) async
。测试框架的某些要求是否始终需要该async
部分,或者仅当您await
在方法主体中的某处使用或进行 Future 调用时才需要该部分?
flutter - 如何将一列小部件紧紧包裹在卡片内?
我的应用程序页面仅由 a 组成,该页面Card
的Column
末尾是 a MaterialList
。即使我的列表只有一两个项目,卡片也会将其垂直空间扩展到屏幕底部,而不是停在列表项目的末尾。Column 文档表明这是正常的 Column 行为(“为每个子项布局一个空或零弹性因子(例如,那些未展开的弹性因子),具有无限的垂直约束”)。我认为将列表包装在 a 中Flexible
可能会达到我想要的效果,但是当我尝试时出现以下错误:
我显然误解了这种布局应该如何工作的东西。
这是我现在作为Scaffold
此页面正文的示例代码:
)
我怎样才能拥有一张紧紧包裹着Column
小部件的卡片?
intellij-idea - Getting exception in intellij ide for, fluttter demo app hello_services
If I run flutter config in the terminal, flutter command not found exception is thrown in the terminal.
android - 即使屏幕关闭,如何在后台运行代码?
我在 Flutter 中有一个简单的计时器应用程序,它显示剩余秒数的倒计时。我有:
在我的手机显示屏关闭(即使我切换到另一个应用程序)并进入睡眠状态之前,它似乎工作正常。然后,计时器暂停。是否有推荐的方法来创建即使屏幕关闭也能在后台运行的服务?
dart - 如何在带有 Flutter 的可滚动视图中拥有具有可变高度内容的 TabView?
我有一个TabBar和TabBarView嵌套在Block中。这是因为 TabBarView 内的内容是动态的,内容的高度直到运行时才知道。
我无法将块嵌套在 TabBarView 内,因为 TabBar 之前的内容应该与 TabBarView 内容一起滚动。
图表:
代码:
但是,TabBarView 的 Viewport 不受约束,需要具有有限高度约束的祖先小部件。不幸的是,一个 Block 没有给出一个有界的高度,因为它的可滚动性。
运行布局时收到此错误:
关于如何最好地解决这个问题的任何想法?
flutter - Creating raw image from Widget or Canvas
My end goal is to be able to share a dynamic image by either passing the raw image data or saving the image to disk for a native android/ios service to share. How would I convert a Widget
or Canvas
in flutter to raw image data (like byte[]
)?
android - PathProvider 文档目录是安全的位置吗?
谁能确认使用 Flutter 的文档目录文件存储方法是安全的,或者 AppData 目录是否是 Android 存储其内部存储文件的位置/方式?
我正在考虑在设备上存储一些持久的本地数据,但我想确保我写的数据不是纯文本或任何人/任何其他人都可以访问。如果这是一个常规的 Android 应用程序,我会使用 Android 的内部存储,它说存储的数据是“您的应用程序私有的,其他应用程序无法访问它们(用户也不能)。当用户卸载您的应用程序时,这些文件将被删除。”
Flutter 有自己的与平台无关的方式来读写文件,它的文档说将内容保存到其文档目录存储文件“只有它可以访问。系统仅在删除应用程序时清除目录。在 iOS 上,这对应于 NSDocumentsDirectory . 在 Android 上,这是 AppData 目录。
看起来这些都在谈论同一件事,因此符合我的安全标准,但这些都是我不太熟悉的事情,我不想冒险使用我的用户数据。我尝试用谷歌搜索找出保存在 Android 上的“AppData”目录中的内容,但大多数人都在谈论他们的 Android Studio 安装。
android - 从网络接收新项目后如何在flutter.io中重绘小部件网格?
我正在修改 Pesto 示例https://github.com/flutter/flutter/blob/76844e25da8806a3ece803f0e59420425e28a405/examples/flutter_gallery/lib/demo/pesto_demo.dart通过添加以下函数从网络接收新食谱:
我将加载附加配方绑定到单击界面按钮:
但是收到新配方后如何重绘主页?我已经尝试过您看到的 Navigator 部分已被注释掉,但它没有用。我也试过
但它只是暂时显示了新配方,感觉不是重新绘制的正确方法。
dart - 以编程方式关注 InputField 并打开键盘
我有一种情况,我需要以编程方式关注InputField(例如响应按钮按下)。
我正在使用Focus.moveTo函数;但是,即使 InputField 已聚焦(出现闪烁的光标),键盘也不会出现。
似乎最好的解决方案是在 _InputFieldState 中调用RequestKeyboard()函数,但这是私有的。
实现这一目标的最佳方法是什么?
这是显示工作流程的代码示例:
flutter - 如何在单元测试期间访问 StatefulWidget 的状态内容?
我有一个 StatefulWidget(调用它MyWidget
),它的 State ( MyWidgetState
) 有一个字段,该字段在以下myData
过程中被初始化initState()
:
当用户按下按钮时,myData 将添加到全局列表中或从全局列表中删除。
我正在尝试编写一个单元测试来测试这种行为,但我不知道如何访问 MyWidgetState。我尝试在 setup() 中包含这个:
但它每次尝试 initState() 时都会崩溃,并抱怨“someField was called on null”。没关系。我尝试这样做可能是在作弊,我应该使用 WidgetBuilder 做一些事情或使用 MyWidget 启动应用程序,然后在正确实例化后在树中找到 MyWidget。
如果我做了所有这些,一旦我这样做了,我如何访问该 MyWidget 的 MyWidgetState 以获取 myData 的副本并将其与全局列表进行比较?