草庐IT

flutter - _launchURL 在我的小部件构建时启动

我正在使用url_launcher包在我的应用程序中启动url。我有很多链接需要使用单独的按钮启动。然而,当我加载我的无状态小部件时,它会启动“_launchURL”函数并打开https://www.yahoo.com立即。我相信这与创建时调用的小部件有关。但是“onPressed”中的函数不应该在实际按下之前调用,对吗?classmyStatelessextendsStatelessWidget{@overrideWidgetbuild(BuildContextcontext){returnListView(children:[button("Link1","https://www.

flutter - CustomPaint 在其下方的小部件上绘制。如何避免?

这个问题在这里已经有了答案:Howtotouchpaintacanvas?(2个答案)关闭4年前。我有一个大小为300、300的CustomPaoint。在这个下方我还有其他小部件。我还有一个监听器,用于跟踪向下和移动位置并将偏移量添加到列表中。此列表用于状态更改并发送到CustomPainter进行绘制。一切正常。如果我在CustomPaint小部件的边界外点击,则它不会绘制。但是,如果我点击CustomPaint内部并移出它,那么偏移量将被记录并用于绘画,这会导致在CustomPaint下面的其他小部件中进行绘画。如何避免?下面是我的代码。classDrawingCanvasext

dart - 访问继承的小部件时在 null 上调用了 Getter

我在尝试在flutter中使用继承的小部件时遇到此错误。Thegetter'serviceListBloc'wascalledonnull.I/flutter(3525):Receiver:nullI/flutter(3525):Triedcalling:serviceListBloc我的代码@overrideWidgetbuild(BuildContextcontext){finalabc=ServiceProvider.of(context).serviceListBloc;returnMaterialApp(title:'LearningJsonParse',home:Scaff

dart - flutter - 具有透明背景的小部件

我正在创建一个具有透明背景的StatefulWidget。相同的代码是:returnScaffold(body:Builder(builder:(context)=>Material(color:Colors.black.withOpacity(0.75),child:newSafeArea(child:Center(child:Container(color:Colors.white,child:ListView(children:[resetPasswordLabel,inputFields,doneButton(context),],),height:250.0,margin:E

flutter - 打开键盘会导致有状态的小部件重新初始化

我在稳定分支中使用Flutter1.2.1。为了说明我的问题,假设我有页面A和B。A使用Navigator.push导航到B,B使用Navigator.pop导航回A。两者都是有状态的小部件。当我从A导航到B然后返回到A时,一切都很好,A保持其状态。但是,如果我从A导航到B,点击B中的文本字段打开键盘,然后关闭键盘并弹回A,A的整个状态将被刷新,A的initState()方法是又叫了。我使用打印语句验证了这一点。只有当我在弹出回A之前打开键盘时才会发生这种情况。如果我导航到B,然后立即导航回A而不与任何东西交互,那么A会保持其状态并且不会重新初始化。根据我的理解,build方法一直被调

flutter - 嵌套行内的文本不会换行,除非封闭的列被换行在灵活的小部件中

我的Text小部件中的文本没有换行,即使在Flexible小部件中也是如此。我找到了一个解决方法,但它涉及将Column小部件包装在Flexible小部件中,我不确定这是最佳做法。我在网上看到很多类似的答案,但没有一个是针对我的确切问题的。相关的是,我的相关文本小部件嵌套在以下层次结构中Row->Column->Row这个布局应该是什么样子的粗略想法:这是原始代码。运行时文本溢出屏幕而不是换行。Row(children:[Column(mainAxisSize:MainAxisSize.min,children:[Text("topcolumn"),Row(children:[Text

android - Gridview 中的小部件在屏幕外时丢失状态

我刚开始玩Flutter/Dart,我想知道为什么我的Card小部件在滚动到屏幕外时会丢失它们的状态。_isSelected由用户点击其中一个Card小部件来切换。一切都很好,直到它们从屏幕上消失——此时它们恢复正常。我假设我必须采取额外的步骤来保存状态,但我不太确定如何最好地解决这个问题。import'dart:convert';import'package:flutter/material.dart';import'package:flutter/services.dart';classCardHolderextendsStatefulWidget{CardHolder({Keyk

flutter - 如何在 flutter 中创建水平和垂直可滚动的小部件

样本布局图片我正在尝试创建附加布局。它有两个容器。首先是一个固定大小的水平滚动框。第二个是占据剩余空间的卡片,其中包含ListView。如何实现这种布局?如您所见,两个容器的滚动方向不同。代码在标签View(第一个框)之前一直有效,但是一旦我添加第二个框,即卡片,它就没有显示任何内容,并且在控制台出现错误,如下所示。I/flutter(9412):AnimatedDefaultTextStyle←_InkFeatures-[GlobalKey#85877inkrenderer]←I/flutter(9412):NotificationListener←⋯I/flutter(9412):

flutter - 查找停用的小部件的祖先是不安全的

我是Flutter的新手,我正在尝试使用对话框接收数据。当在textField中单击时,出现image2的错误...show(BuildContextcontext){vardialog=Dialog(child:Container(margin:EdgeInsets.all(8.0),child:Form(child:Column(mainAxisSize:MainAxisSize.min,children:[TextFormField(decoration:InputDecoration(labelText:"Insiraonúmerodetelefone",border:Outl

flutter - 在导航中使用带有 GlobalKeys 的小部件

我的“主要”小部件必须具有全局键。如果我使用pushNamed或等效项导航到它,它会生成有关小部件树中重复键的异常。我只能弹出到这个小部件,但这严重减少了我的导航选项和小部件的可重用性。我已经包含了一个小型重现案例的源代码,运行该应用程序,单击主页上的Login按钮,输入3个字符的登录名和3个字符的密码,然后Login。有什么想法吗?在没有GlobalKey的情况下重新设计是一项艰巨的任务。flutter:══╡EXCEPTIONCAUGHTBYWIDGETSLIBRARY╞════════════════════════════════════════════════════════