Flutter : Unimplemented handling of missing static target

这个问题应该是分不同的情况,但是现在网上没什么资料

我碰到的问题:在页面写了一个公共带状态的view(StatefulWidget)出现的 , 但是这个问题只出现在了ios端,安卓完全正常(说好的两端一致呢)

解决方法:

1、了解StatefulWidget里构造函数key的作用;

2、了解何时使用GlobalKey;

下面贴代码秒懂:

//view部分
class MyView extends StatefulWidget {
  const MyView({Key key}) : super(key: key);
  @override
  MyViewState createState() => MyViewState();
}

//调用部分

final GlobalKey<MyPicViewState> key = GlobalKey();
MyView(
  key: key,
)

注意:

一个控件使用一个key,不同控件创建不用key ,以免出现下边的问题:

flutter: The following assertion was thrown building RawGestureDetector(state:
flutter: RawGestureDetectorState#3137f(gestures: [tap])):
flutter: Multiple widgets used the same GlobalKey.
flutter: The key [LabeledGlobalKey<MyPicViewState>#6e8a3] was used by multiple widgets. The parents of those
flutter: widgets were:
flutter: - Listener(listeners: [down], behavior: deferToChild, renderObject: RenderPointerListener#cc6e5
flutter: relayoutBoundary=up12 NEEDS-LAYOUT NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE)
flutter: - Listener(listeners: [down], behavior: deferToChild, renderObject: RenderPointerListener#54fb3
flutter: NEEDS-LAYOUT NEEDS-PAINT)
flutter: A GlobalKey can only be specified on one widget at a time in the widget tree.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值