首页 > 解决方案 > 在颤振中调用时获取空值检查运算符用于空值错误

问题描述

我正在使用这个飞镖包 otp_text_field 1.1.1。

                     OTPTextField(
                        length: 6,
                        width: MediaQuery.of(context).size.width,
                        fieldWidth: 30,
                        style: TextStyle(fontSize: 20),
                        textFieldAlignment: MainAxisAlignment.spaceAround,
                        fieldStyle: FieldStyle.underline,
                        onChanged: (pin) {
                          if (pin.length == 6) {
                            print("Changed: " + pin);
                          }
                        },
                      )

我在 onChanged 处理程序上收到此错误

The following _CastError was thrown while calling onChanged:
Null check operator used on a null value
When the exception was thrown, this was the stack

不知道什么是错的。

添加了堆栈跟踪 -

  _OTPTextFieldState.buildTextField.<anonymous closure>
package:otp_text_field/otp_field.dart:179
#1      EditableTextState._formatAndSetValue
package:flutter/…/widgets/editable_text.dart:2298
#2      EditableTextState.updateEditingValue
package:flutter/…/widgets/editable_text.dart:1749
#3      TextInput._handleTextInputInvocation
package:flutter/…/services/text_input.dart:1351
#4      MethodChannel._handleAsMethodCall
package:flutter/…/services/platform_channel.dart:435

标签: flutterdart

解决方案


只需提供该onCompleted小部件的回调即可。它是一个可为空的回调,这意味着它不强制传递该函数。但是,如果顶部文本字段的长度与您提供的指定长度匹配,则此依赖项会调用此回调。


推荐阅读