我希望能够在Widget完成构建/加载后运行函数,但我不确定如何.我目前的用例是检查用户是否经过身份验证,如果没有,则重定向到登录视图.我不想在之前检查并推送登录视图或主视图,它需要在主视图加载后发生.有什么我可以用来做这个吗?
谢谢
当我在landScape模式下点击textField时,我想在全屏模式下展开喜欢whatsapp
TextFormField(
keyboardType: TextInputType.number,
decoration: InputDecoration(
prefixIcon: Padding(
padding: EdgeInsets.all(0.0),
child: Icon(Icons.person,
size: 40.0, color: Colors.white),
),
hintText: "Input your opinion",
hintStyle: TextStyle(color: Colors.white30),
border: OutlineInputBorder(
borderRadius:
BorderRadius.all(new Radius.circular(25.0))),
labelStyle: TextStyle(color: Colors.white)),
textAlign: TextAlign.center,
style: TextStyle(
color: Colors.white,
fontSize: 25.0,
),
controller: host,
validator: (value) {
if (value.isEmpty) {
return "Empty value";
}
},
)
Run Code Online (Sandbox Code Playgroud) 我正在使用最新版本的Android Studio IDE来创建flutter应用程序。但是当我从 Mojave 升级到 Catalina 并尝试flutter在 IDE 上打开我的代码时,它给了我一个错误:
由于无法验证开发者,因此无法打开 Dart
错误背后的原因是什么,我该如何解决这个问题?
我是否必须再次从头开始安装 flutter 和相关开发工具,或者有其他方法可以解决问题吗?
dart android-studio flutter flutter-dependencies macos-catalina
我尝试使用空安全,但它给了我这个错误:
这需要启用“不可为空”语言功能。尝试更新 pubspec.yaml 以将最小 SDK 约束设置为 2.10.0 或更高版本,并运行“pub get”。
我将 Dart SDK 约束从 更改2.7.0为2.10.0,但它仍然显示此错误。
另外,我升级了我的 Dart 和 Flutter SDK:
dart-sdk v2.10.2 是基于您的来源的最新版本。
颤动(通道稳定,1.22.3,...
C:\Android\sdk\bin>sdkmanager 错误:无法确定 SDK 根。错误:要么使用 --sdk_root= 明确指定它,要么将此包移动到其预期位置:\cmdline-tools\latest\
它显示为这样,即使在 env 变量中指定了根之后。ANDROID_SDK_ROOT C:\Android\sdk
我正在使用 Windows 10 64 位机器,我想在没有 android studio 的情况下运行 flutter,所以按照此页面上的说明进行操作https://medium.com/@quicky316/install-flutter-sdk-on-windows-without-android-studio- 102fdf567ce4
我有一个Strings 列表,例如,
var moviesTitles = ['Inception', 'Heat', 'Spider Man'];
Run Code Online (Sandbox Code Playgroud)
并希望用moviesTitles.map它们将它们转换为Tab WidgetFlutter 中的s 列表.
我是 flutter 的新手,当我想在 InitState 中调用我的上下文时,它会抛出一个错误:这是关于
BuildContext.inheritFromWidgetOfExactType
但后来我使用了 didChangeDependencies 并且它可以正常工作。
现在我有两个问题:
1- 为什么在 initState 中调用我们的上下文不起作用,但在从 didChangeDependencies 调用时却起作用?(因为正如我在官方文档中读到的那样This method is also called immediately after [initState],它们都将在构建方法之前被调用。)
2- 为什么我们可以在 build 方法之外访问我们的上下文(因为在那里我们build(BuildContext context)可以使用我们的上下文,但是在 didChangeDependencies 中我们没有类似的东西didChangeDependencies(BuildContext context),所以我们可以从哪里调用上下文来使用它)?
我shared_preferences在适用于 iOS 和 Android 的 Flutter 应用程序中使用。在网络上,我使用http:dart依赖项 ( window.localStorage) 本身。由于 Flutter for web 被合并到 Flutter repo 中,我想创建一个跨平台的解决方案。
这意味着我需要导入两个单独的 API。这在 Dart 中似乎还没有得到很好的支持,但这就是我所做的:
import 'package:some_project/stub/preference_utils_stub.dart'
if (dart.library.html) 'dart:html'
if (dart.library.io) 'package:shared_preferences/shared_preferences.dart';
Run Code Online (Sandbox Code Playgroud)
在我的preference_utils_stub.dart文件中,我实现了在编译时需要可见的所有类/变量:
Window window;
class SharedPreferences {
static Future<SharedPreferences> get getInstance async {}
setString(String key, String value) {}
getString(String key) {}
}
class Window {
Map<String, String> localStorage;
}
Run Code Online (Sandbox Code Playgroud)
这在编译之前消除了所有错误。现在我实现了一些检查应用程序是否正在使用网络的方法:
static Future<String> getString(String key) async {
if (kIsWeb) {
return window.localStorage[key];
}
SharedPreferences preferences = …Run Code Online (Sandbox Code Playgroud) 我不记得我是否曾经修改过 Android 模拟器的设置,但我一直在使用 Android Studio 在 Android 模拟器上测试我的应用程序,每次我截屏时,它都会崩溃。
我尝试删除、擦除并创建一个新的模拟器。这些都不起作用。我还尝试使用新的模拟器在不运行我的应用程序的情况下截取屏幕截图,并且出现了同样的问题。每当我尝试拍照时它就会崩溃。
Android Studio报这个错误:
块引用警告 | 意外的系统映像特征字符串,模拟器可能无法正常工作,请尝试更新模拟器。警告| 无法添加库 /Users/sbenati/Library/Android/sdk/emulator/qemu/darwin-x86_64/lib64/vulkan/libvulkan.dylib:失败信息 | configAndStartRenderer:将垂直同步设置为 60 Hz 添加库 /Users/sbenati/Library/Android/sdk/emulator/lib64/vulkan/libvulkan.dylib 警告 | 无法添加库 /Users/sbenati/Library/Android/sdk/emulator/qemu/darwin-x86_64/lib64/vulkan/libMoltenVK.dylib:失败信息 | 添加了库 /Users/sbenati/Library/Android/sdk/emulator/lib64/vulkan/libMoltenVK.dylib 在 127.0.0.1:8554 启动 GRPC 服务器,安全性:本地信息 | 广告在:/Users/sbenati/Library/Caches/TemporaryItems/avd/running/pid_935.ini
我的机器是配备 32GB RAM 和 i7 CPU 的 Mac,因此我无法将此视为系统性能问题。
如果没有人有任何建议,我将不得不重新安装所有内容。谢谢大家的提示。
编辑:
我在最近购买的一台新 Mac mini 上运行了这个程序,并得到了这条非常有用的消息。我追踪到了有关关闭 Vulcan 的建议解决方案,但它对我不起作用。
flutter build ipa在使用 Xcode 14.3 和 Flutter 3.7.9 的macOS\xc2\xa0v13.3 (Ventura)上失败。
日志输出:
\nxcodebuild[83777:409216] DVTCoreDeviceEnabledState: DVTCoreDeviceEnabledState_Disabled set via user default (DVTEnableCoreDevice=disabled)\nRun Code Online (Sandbox Code Playgroud)\nflutter run在 iOS 模拟器上运行没有问题。