编程面试题

  • 如何遍历属于键值的对象数组-Flutter

    我建议您在这种情况下使用数据类。 import 'package:fluttermaterial.dart'; ListAnchor _parseAnchorsMapString, dynamic map { final anchors = Anchor[]; for var anchorMap in map['Anchors'] { f

  • 在flutter的initstate()之前调用了DependOnInheritedElement()

    我在上一个答案中也提到过,Provider.ofcontext它应该在小部件树中使用,而build方法之外的任何东西都不在小部件树中。但是,如果仍然要使用它,则需要将listen参数设置为false。 像这样: @override void initState { Pr

  • 在Flutter中向下拖动时缩放内容

    试试这个CustomScrollView: LayoutBuilder builder: context, constraints { return CustomScrollView slivers: Widget[ SliverPersistentHeader pinned: true,

  • 动画路线出去/被替换

    从Flutter源代码注释中: Signature for the [PageRouteBuilder] function that builds the route's transitions. See [ModalRoute.buildTransitions] for complete definition of the parameters. typedef Widget R

  • Listview.builder的builditem函数内的Flutter Setstate无法重新加载

    我通过将firstBuildItem窗口小部件功能转换为它自己的类的有状态窗口小部件来解决了该问题。然后将一个键传递给该函数。这样,setState可以工作,而无需重建整个streambuilder。 ListView.builder padding: EdgeInsets.all10.0, itemCount: snapsho

  • 如何查看Android权限来自何处?

    您在来源中看到的清单不是最终APK中的清单。最终的AndroidManifest是通过构建过程构建的,并从不同的来源进行了编译。如果您想查看清单合并的完整报告,可以进入 buildappoutputslogs 这是一个很长的日志报告,但是您可以阅读所有清单部分的来源。如果您想查看最终清单本身,可以在以下位置找到 buildappin

  • 如何在Google登录期间使用Flutter和Firestore获取用户的displayName的首字母?

    看来您已经将显示名称存储在Firestore数据库中。我建议不要将第一个字母也存储在数据库中,因为这似乎有点多余,但是请按照需要进行处理。在Dart中,您可以用于.toUpperCase将字符串转换为全部大写。试试看: String firstLetter = user.displayName.substring0,1.toUpperCase;

  • Flutter-从rest api遍历经纬度列表以获取两个坐标之间的距离

    我在您的代码中看到了多个错误。 首先,您的代码未编译 Double Dart语言中的type是小写。 您不应该double使用empty 初始化变量String。 其次,将全局状态与异步调用一起使用。如果仅将参数传递给getDistance方法,那会更好。像

  • 从mysql获取数据到StreamBuilder Flutter

    如果您想与StreamBuilder定期使用它; import 'dart:async'; import 'package:fluttermaterial.dart'; import 'package:httphttp.dart' as http; import 'dart:convert'; class MyApp extends StatelessWidget { This widget i

  • 在Flutter中结合SingleChildScrollView和PageView

    我已经对此进行了测试。 class SO extends StatefulWidget { @override _SOState createState = _SOState; } class _SOState extends StateSO { Widget buildBuildContext context { return Scaffold

  • 颤抖的iOS构建失败(ld:未找到-lPods-Runner的库)

    在新项目中,必须在iOS部分中调整一些参数,例如签名,并且您只能在Xcode中进行此操作。 因此,尝试使用Xcode打开iOS项目并尝试从那里构建它。您会在那里看到更好的警告和错误消息,特别是有关签名的消息。 您可以打开Xcode并找到您的项目ios文件夹,或者: cd yourprojectios open -a Xcode .

  • Flutter / Dart-调用未来的函数 …但只需要返回一个字符串

    您什么时候需要打电话给未来? 您始终可以创建一个tmp变量并尝试加载它。您不能将期货随机放入构建过程中。如果视图已更改,则需要获取数据,然后调用setState通知小部件。 String _setList = null; initState called when the widget is mounted. void initState { super.initState;

  • 飞镖日期倒计时

    首先-存在错误:您必须使用data.remaining.inMilliseconds而不是data.remaining.inSeconds 对于格式化,最好使用Duration而不是DateTime。但是您可以更改现有代码,例如: var format = new DateFormat"mm:ss"; var dateString = '$

  • 如何在Flutter中仅解析一次JSON

    问题出在您的build方法上,尤其是您要做的部分: new FutureBuilder future: fetchUser, 基本上,如果您build因任何原因再次在何处被呼叫,您将fetchUser再次呼叫。 为什么要再次调用bui

  • 容器borderRadius与ClipRRect borderRadius

    ClipRRect 在其子树中插入一个修改小部件的渲染树的渲染对象。 的子树ClipRRect 将受到 影响,角将被剪裁。 对小部件本身及其子级的命中测试将在尊重

  • 正则表达式在Dart中未返回任何匹配项,但可用于在线正则表达式测试器

    您可以使用 r"^[\w-]+:?!\s*$.+$" 要么 "^[\\w-]+:?!\\s*\$.+\$" 请注意,在非原始字符串文字中,双反斜杠代表单个文字反斜杠。在原始字符串文字中,您无需转义$符号,而只需要一个反斜杠即可形成正则表达式转义。 b

  • 将整数列表显示为字符串

    这似乎是的完美用法List.join,如下所示: var list = int[1, 2, 3, 4, 5]; var textToDisplay = list.join',';

  • 在使用StreamBuilder从Firebase加载数据之前,Flutter会显示一个红色错误屏幕,该如何解决?

    因此,在尝试了一些东西之后,我终于解决了该错误。由于此问题在线上没有任何解决方案,因此决定发布答案。至少我找不到一个。希望这可以帮助遇到同样问题的人 我首先要做的是声明一个包含user.uid值的字符串 String userid; void _getUser async { FirebaseUser user = await FirebaseAuth.instance.currentU

  • 在颤抖中获得设备IMEI

    获取唯一标识符的最佳方法… 在Android中:unique_identifier用于获取IMEI dev_dependencies: unique_identifier: ^0.0.3 String identifier =await UniqueIdentifier.serial; 在IOS中:Apple不再允许您检

  • 使用rxDart合并Firestore流

    根据您的用例,您可能不需要RxDart来执行此操作。如果您只想将两个Firestore流合并到一个Dart中Stream,则可以StreamZip从dart:async包中使用。 import 'dart:async'; StreamListQuerySnapshot getData { Str

  • 如何在列表视图中显示图像和文本?

    您需要在的itemBuilder属性中构建布局ListView。如果要将文本放在图像上,最好的布局小部件是Stack。 请参阅以下内容以获取颤振的布局系统:https : a href="https:flutter.iotutorial

  • 多供应商不能在扑朔迷离的物质应用程序中工作?

    没有错误下面的测试代码的工作,你可以用你的情况下,测试 使用Consumer包MaterialApp 程式码片段 return MultiProvider providers: [ ChangeNotifierProviderPosts create: co

  • 颤振曲线

    制作一个ShapeBorder像这样的自定义类(关键方法是_getPath返回形状的Path): class CustomShapeBorder extends ShapeBorder { const CustomShapeBorder; @override Path getInnerPathRect rect, {

  • Flutter android_alarm_manager插件不会定期运行

    您无法通过以下时间安排警报AlarmManager: 注意:从API 19(Build.VERSION_CODES.KITKAT)开始,警报传递是不精确的:操作系统将转移警报,以最大程度地减少唤醒和电池消耗。有一些新的API支持需要严格交付保证的应用程序。请参见setWindow(int,long,long,android.app.PendingIntent)和s

  • 限制可拖动区域

    不,那不是Draggable小部件的目标。而是使用a GestureDetector来检测阻力。然后将其与类似Align内容移动的内容结合起来 这是一个基于您当前代码的完全可用的滑块。 import 'package:fluttermaterial.dart'; void main = runAppM

  • 嵌套的FutureBuilder与嵌套调用以从数据库进行延迟加载

    鉴于在此示例中看不到太多代码,我将对您的问题做一个高级回答。 评估方法一 马上,这部分内容就突出了:“从Employee表中返回所有dep_id” 我想从头开始说,因为“全部返回”通常都不是一个好的解决方案,尤其是因为您提到表中有很多行。 评估方法二 o

  • 如何在不指定文档ID的情况下更新文档内部的数据?

    与您发布的代码等效的Dart如下所示: Firestore.instance.collection'users' .where'name', isEqualTo: 'Daniel' .getDocuments .thenquerySnapshot { querySnapshot.documents.forEachdocumentSnapshot { docu

  • 无法将类型“ AuthResult”的值分配给“ FirebaseUser”类型的变量

    该方法firebaseAuth.signInWithCredentialcredential返回类型的值AuthResult,因此您需要执行以下操作: AuthResult userDetails = await _firebaseAuth.signInWithCredentialcredential; 对于您的代码

  • Geolocator插件获取当前位置

    问题是google_maps_flutter软件包需要访问您位置的权限,但该软件包没有本机代码来请求该权限。 因此,您需要编写本机代码或仅安装另一个能够获得该许可权的软件包。 安装此程序:https : a href="https:pub.dartlang.orgpackagesl

  • 如何从导入的包中将VSCode中的断点添加到dart文件中?

    您需要启用一个或两个Dart Code设置: 在您的用户设置中添加以下内容: "dart.debugExternalLibraries": true, "dart.debugSdkLibraries": true, 第一个将允许调试pub软件包;而第二个将允许调试Flutter sdk。 di

  • 如何在颤抖的默认日期选择器中删除时间戳或仅获取日期形式的日期选择器?

    我制作了Custom DateFormat,可以使用此代码,然后将输出为:16-04-2019 TextEditingController _datecontroller = new TextEditingController; var myFormat = DateFormat'd-MM-yyyy'; Futurevoid _selectDateBuildContext conte

  • 空置状态有什么意义?

    我要说这只是一个 约定 。上面可以改写成 readLocal async { prefs = await SharedPreferences.getInstance; setState { id = prefs.getString'id' ?? ''; if id.hashCode = peerId.hashCode {

  • 对于Flutter插件,我应该在Swift本机代码中传递哪个视图控制器?

    试试这个: if let vc = UIApplication.shared.delegate?.window??.rootViewController as? FlutterViewController { interstitial.showwithPresenting: vc }

  • 拨号程序未显示完整的美元代码,例如:* 123 * 1#

    您需要对URL中的特殊字符使用URL编码。 所以#等号%23 这会工作 launch'tel:\

  • 如何将函数作为参数从Dart / Flutter传递到Android本机代码?

    您无法传递函数。 您可以创建从函数名称到函数引用的映射,然后传递函数名称并在映射中按名称查找函数并调用它。 您也不能传递POJO。 您需要将其序列化为JSON(或其他受支持的格式),并在通道的另一侧反序列化。为此,您需要在Dart和Java中实现POJO类。 像protobuf或flatbuffer之类的程序包允许根据一种简化的语言为不同的语言生成代码,以指定数据结构。p

  • 在Flutter中上传带有http.post和注册表格的图片?

    试试这个 在fileList中,您应该添加要上传的任何文件 ListMultipartFile fileList = List; fileList.addMultipartFile.fromBytes 'documents', await filePath.readAsBytes, filename: fileName

  • Flutter / dart将部分OFFSCREEN小部件捕获为图像[重复]

    这让我很好奇是否可行,因此我做了一个快速的模型来证明它确实有效。但是请注意,这样做实际上是在故意破坏flutter进行优化的工作,因此您实际上不应在绝对必要的地方使用它。 无论如何,这是代码: import 'dart:math'; import 'dart:ui' as ui; import 'package:fluttermaterial.dart'; import 'package:f

  • 使用构造函数“ className()和className ._()之间的区别

    例如: class MyClass { MyClass; MyClass.named; MyClass._private; MyClass._; } 上面的类有四个构造函数: MyClass:这是 默认的 未命名构造函数。在设计类时,您希望它表示人们 e

  • Flutter:InternalLinkedHashMap'没有实例参数'cast'具有匹配的参数

    改用 .castString,dynamic; 另请参阅https:api.dartlang

  • Flutter引发了另一个异常:未布置RenderBox:RenderRepaintBoundary#eaea6 NEEDS-LAYOUT NEEDS- PAINT

    您不能Expanded在SingleChildScrollView其中具有无限垂直尺寸的窗口小部件。 class _HomePageState extends StateHomePage { final ListListItem _children; @override Widget buildBuildConte