标签: flutter

如何为文本字段提供初始值?

我想为文本字段提供初始值,并使用空值重绘它以清除文本.使用Flutter的API,最好的方法是什么?

dart flutter

77
推荐指数
13
解决办法
4万
查看次数

如何处理不需要的小部件构建?

由于各种原因,有时会build再次调用我的小部件的方法.

我知道这是因为父母更新了.但这会导致不良影响.导致问题的典型情况是使用FutureBuilder这种方式:

@override
Widget build(BuildContext context) {
  return FutureBuilder(
    future: httpCall(),
    builder: (context, snapshot) {
      // create some layout here
    },
  );
}
Run Code Online (Sandbox Code Playgroud)

在此示例中,如果再次调用构建方法,则会触发另一个http请求.这是不受欢迎的.

考虑到这一点,如何处理不需要的构建?有什么方法可以阻止构建调用?

flutter

77
推荐指数
6
解决办法
1万
查看次数

所有颤动图标的列表

我在寻找合适的颤振图标时遇到困难。是否有任何网站或任何来源可以获取可用于 flutter 的所有图标的列表?

icons flutter

76
推荐指数
3
解决办法
22万
查看次数

如何在Flutter中为窗口小部件添加边框?

我正在使用Flutter,我想为小部件添加边框(在本例中为文本小部件).

我尝试了TextStyle和Text,但我没有看到如何添加边框.

dart flutter

75
推荐指数
12
解决办法
7万
查看次数

DT_TOOLCHAIN_DIR 不能用于评估 LIBRARY_SEARCH_PATHS,请改用 TOOLCHAIN_DIR

尝试在最新的 Xcode 和 iOS 17 更新后运行 flutter 应用程序并收到以下错误“DT_TOOLCHAIN_DIR 无法用于评估 LIBRARY_SEARCH_PATHS,请改用 TOOLCHAIN_DIR”

# Uncomment this line to define a global platform for your project
# platform :ios, '11.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'

project 'Runner', {
  'Debug' => :debug,
  'Profile' => :release,
  'Release' => :release,
}

def flutter_root
  generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
  unless File.exist?(generated_xcode_build_settings_path)
    raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is …
Run Code Online (Sandbox Code Playgroud)

ios dart flutter

75
推荐指数
4
解决办法
4万
查看次数

颤动:如何正确使用继承的小部件?

使用InheritedWidget的正确方法是什么?到目前为止,我明白它让你有机会沿着Widget树传播数据.在极端情况下,如果你把它作为RootWidget,它将可以从所有Routes树中的所有Widgets访问,这很好,因为不知何故我必须使我的ViewModel/Model可以访问我的Widgets而不必诉诸于全局或Singletons.

但是InheritedWidget是不可变的,那么如何更新呢?更重要的是我的状态窗口小部件如何触发重建他们的子树?

不幸的是,文档在这里非常不清楚,经过大量讨论后,似乎没有人真正知道使用它的正确方法.

我添加了Brian Egan的一句话:

是的,我认为这是一种沿树传播数据的方法.从API文档中我发现令人困惑的是:

"以这种方式引用时,继承的小部件将导致使用者在继承的小部件本身更改状态时重建."

当我第一次阅读本文时,我想:

我可以在InheritedWidget中填充一些数据并稍后进行修改.当发生突变时,它将重建引用我的InheritedWidget的所有Widgets我发现的内容:

为了改变InheritedWidget的状态,你需要将它包装在StatefulWidget中然后实际上改变StatefulWidget的状态并将这些数据传递给InheritedWidget,后者将数据传递给它的所有子节点.但是,在这种情况下,它似乎重建了StatefulWidget下面的整个树,而不仅仅是引用InheritedWidget的Widgets.那是对的吗?或者它会以某种方式知道如果updateShouldNotify返回false,如何跳过引用InheritedWidget的Widgets?

dart flutter

74
推荐指数
3
解决办法
2万
查看次数

如何在文本字段中颤动的值末尾设置光标位置?

问题是我想在文本字段的值末尾添加“,00”在 iOS 设备中效果很好,但在 android 中光标移动到文本字段中值的起点。所以,我无法添加“,00”。

flutter

74
推荐指数
9
解决办法
4万
查看次数

构建 Flutter 应用程序时“由于使用已弃用的 Android v1 嵌入而导致构建失败”

to migrate your project. You may also pass the --ignore-deprecation flag to\nignore this check and continue with the deprecated v1 embedding. However,\nthe v1 Android embedding will be removed in future versions of Flutter.\n\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\nThe detected reason was:\n\n  C:\\Users\\ALI HASSAN\\OneDrive\\Desktop\\New folder\\arcore_app\\example\\android\\app\\src\\main\\AndroidManifest.xml uses\n  `android:name="io.flutter.app.FutterApplication"`\n\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\n\nBuild failed due to use of deprecated Android v1 embedding.\n
Run Code Online (Sandbox Code Playgroud)\n

android flutter

74
推荐指数
5
解决办法
13万
查看次数

未配置Dart SDK

我安装了Flutter并设置了Android Studio.然后我在GitHub上克隆了一个颤动的例子(https://github.com/flutter/flutter)并在Android Studio中启动它,但它警告我"Dart SDK未配置",这也发生在我的同事身上.但是,如果我在Android Studio中创建一个新项目,则完全没问题.

我做了什么:

  1. 安装颤振

  2. 安装了Android Studio,以及包括Dart插件在内的Flutter插件

  3. 在命令行中的颤动运行正常,所有五个测试都通过了.(见下文)

[✓] Flutter(在Mac OS X 10.13.3 17D47,locale en-US,channel dev)•Flutter version 0.0.22 at/Users/katelyn/flutter•Framework revision 3001b3307d(7天前),2018-01-30 11:37:15 -0800•引擎版本8f2d72b183•工具Dart版本2.0.0-dev.16.0•Engine Dart版本2.0.0-edge.7af4db0ea091dddca6b2da851e6dda8d7f9467e8

[✓] Android工具链 - 针对Android设备开发(Android SDK 27.0.3)•Android SDK位于/ Users/katelyn/Library/Android/sdk•Android NDK位置未配置(可选;对原生分析支持很有用)•平台android- 27,构建工具27.0.3•Java二进制文件:/ Applications/AndroidStudio.app/Contents/jre/jdk/Contents/Home/bin/java•JavaScriptOpenJDK Runtime Environment(build 1.8.0_152-release-915- B08)

[✓] iOS工具链 - 针对iOS设备开发(Xcode 9.2)•Xcode位于/Applications/Xcode.app/Contents/Developer•Xcode 9.2,构建版本9C40b•ios-deploy 1.9.2•CocoaPods 1.4.0版

[✓] Android Studio(版本3.0)•Android Studio at/Applications/Android Studio.app/Contents•Java版OpenJDK运行时环境(版本1.8.0_152-release-915-b08)

[✓]连接设备•为x86构建的Android SDK•emulator-5554•android-x86•Android 7.1.1(API 25)(模拟器)

上周,我可以通过命令行(在该目录中)运行他们的示例,

flutter run 
Run Code Online (Sandbox Code Playgroud)

但现在我用Gradle显示了一些错误.

在调试模式下为x86构建的Android SDK上启动lib/main.dart ...初始化gradle ... 0.7s解决依赖关系......
*运行Gradle时出错:退出代码1:/ Users/katelyn/AndroidStudioProjects/flutter/examples/flutter_gallery/android/gradlew app:属性:

FAILURE:构建因异常而失败.

  • 其中:构建文件'/Users/katelyn/AndroidStudioProjects/flutter/examples/flutter_gallery/android/app/build.gradle'行:20

  • 出了什么问题:评估项目':app'时出现问题.3

  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪.使用--info或--debug选项运行以获取更多日志输出.

  • https://help.gradle.org获取更多帮助 …

dart android-studio flutter

73
推荐指数
18
解决办法
5万
查看次数

未处理的异常:InternalLinkedHashMap<String, dynamic>' 不是类型 'List<dynamic> 的子类型

我正在尝试从服务器获取 JSON 响应并将其输出到控制台。

Future<String> login() async {
    var response = await http.get(
        Uri.encodeFull("https://etrans.herokuapp.com/test/2"),
        headers: {"Accept": "application/json"});

    this.setState(() {
      data = json.decode(response.body);
    });


    print(data[0].name);
    return "Success!";
  }
Run Code Online (Sandbox Code Playgroud)

未处理的异常:类型“_InternalLinkedHashMap<String, dynamic>”不是“List”类型的子类型

可能是什么原因?

dart flutter

72
推荐指数
7
解决办法
13万
查看次数

标签 统计

flutter ×10

dart ×6

android ×1

android-studio ×1

icons ×1

ios ×1