如何更改TextField工具栏样式?

时间:2019-08-29 08:33:51

标签: android ios flutter

我想更改TextField的工具栏的填充/背景色/字体大小。(长按TextField时,该工具栏将显示。) 我该怎么办? 我读了text_field.dart和text_selection.dart但找不到答案。

我注意到,当我使用materialTapTargetSize:MaterialTapTargetSize.padded时,更改文本字段工具栏的填充很有帮助,但是我发现更改其样式(例如背景颜色,跨度颜色等)没有任何帮助。

这是我的代码。我简化了代码。此代码在main.dart中。 TextField在另一个dart文件中。

MaterialApp(
      theme: ThemeData(
        splashColor: Colors.transparent,
        highlightColor: Colors.transparent,
        primaryColorBrightness: Brightness.light,
        buttonTheme: ButtonThemeData(
          minWidth: 0,
          padding: EdgeInsets.all(0), // Notice this
          materialTapTargetSize: MaterialTapTargetSize.shrinkWrap,
          splashColor: Colors.transparent,
          highlightColor: Colors.transparent,
        ),home:SizedBox()
 )

当我更改填充时,TextField工具栏填充将更改。我有些困惑,在主题不变的情况下如何更改它。我发现TextStyle没有任何帮助。

TextField(
              style: CustomTextStyle.textField14TextStyle,
              keyboardType: widget.keyboardType,
              autocorrect: false,
              enableInteractiveSelection: true,
              decoration: InputDecoration(
                hintText: _getHintText(),
                hintStyle: CustomTextStyle.minorGray14TextStyle,
                enabledBorder: UnderlineInputBorder(
                  borderSide: BorderSide(color: widget.isError ? Color(0xffbb424a) : Color(0xff333333)),
                ),
                focusedBorder: UnderlineInputBorder(
                  borderSide: BorderSide(color: widget.isError ? Color(0xffbb424a) : CustomColor.obviousTextColor),
                ),
                contentPadding: EdgeInsets.symmetric(vertical: Global.isShortScreen ? 15 : 20),
              ),
              onSubmitted: (text) {
                if (widget.onSubmitted != null) {
                  widget.onSubmitted();
                }
              },
              controller: widget.controller,
              cursorColor: CustomColor.obviousTextColor,
            )

我尝试使用类似Material( child: Theme(data:ThemeData(),child:TextField())之类的方法,但是它不起作用。

0 个答案:

没有答案