【问题标题】:Change input text color on DropdownSearch在 DropdownSearch 上更改输入文本颜色
【发布时间】:2021-04-11 04:03:34
【问题描述】:

有没有办法改变 DropdownSearch 小部件的输入颜色?默认颜色是黑色,但我想将其更改为灰色。我试过了 labelStyle: TextStyle(color: Colors.white) 但它不起作用。

这是我的 DropdownSearch 小部件

                    Container(
                      child: DropdownSearch<String>(
                        mode: Mode.BOTTOM_SHEET,
                        showSearchBox: true,
                        dropdownSearchDecoration: new InputDecoration(
                          enabledBorder: UnderlineInputBorder(
                            borderSide: BorderSide(color: Colors.white),
                          ),
                          focusedBorder: UnderlineInputBorder(
                            borderSide: BorderSide(color: Colors.white),
                          ),
                          prefixIcon: const Icon(
                            Icons.corporate_fare,
                            color: Colors.white,
                          ),
                        ),
                        showAsSuffixIcons: true,
                        showClearButton: false,
                        dropdownButtonBuilder: (_) => Padding(
                          padding: const EdgeInsets.all(8.0),
                          child: const Icon(
                            Icons.arrow_drop_down,
                            size: 24,
                            color: Colors.grey,
                          ),
                        ),
                        showSelectedItem: true,
                        items: _industry,
                        onChanged: (String newValue) {
                          setState(() {
                            dropDownValue = newValue;
                          });
                        },
                        selectedItem: dropDownValue,
                      ),
                    ), 

【问题讨论】:

    标签: flutter dart-pub


    【解决方案1】:

    有两种选择: 首先,你可以用 Theme 小部件包装它:

    Theme(
              data: ThemeData(
                textTheme: TextTheme(subtitle1: TextStyle(color: Colors.green)),
              ),
              child: DropdownSearch<String>(
                mode: Mode.BOTTOM_SHEET,
                showSearchBox: true,
                dropdownSearchDecoration: new InputDecoration(
                  enabledBorder: UnderlineInputBorder(
                    borderSide: BorderSide(color: Colors.red),
                  ),
    ...
    

    或者您可以从库中更改它。转到 selectDialog.dart。第 349 行是搜索框。为 textField 添加颜色:

    ...
    TextField(
                    style: TextStyle(color: Colors.red),
                    controller: widget.searchBoxController,
                    focusNode: focusNode,
                    onChanged: (f) => _debouncer(() {
                      _onTextChanged(f);
                    }),
    ...
    

    您必须停止并重新启动应用程序才能使其工作。

    【讨论】:

      猜你喜欢
      • 2020-09-08
      • 1970-01-01
      • 2020-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-15
      • 1970-01-01
      • 2013-06-20
      相关资源
      最近更新 更多