Как редактировать пакет флаттера flappy_search_bar? - PullRequest
0 голосов
/ 06 марта 2020

Я хочу отредактировать некоторые функции flappy_search_bar

enter image description here

Как видите, загрузочный счетчик синий, а я не могу отредактировать это каким-либо альтернативным цветом. Я также не могу редактировать цвет курсора, который также является синим.

Вот копия моего текущего блока кода:

 @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
        child: SearchBar<Post>(
          searchBarPadding: EdgeInsets.symmetric(horizontal: 20),
          headerPadding: EdgeInsets.symmetric(horizontal: 10),
          listPadding: EdgeInsets.symmetric(horizontal: 10),
          onSearch: _getALlPosts,
          hintStyle: TextStyle(color: Colors.black87),
          hintText: 'Search',
          iconActiveColor: Colors.deepPurpleAccent,
//          cursorColor: Colors.deepPurpleAccent,
//          loader: Colors.deepPurpleAccent,
          textStyle: TextStyle(
            fontFamily: 'OpenSans',
            fontSize: 18.0,
          ),`

До сих пор я пытался редактировать непосредственно в строке поиска, как показано выше, добавляя код расширения следующим образом:

 class Styling extends SearchBar {
  Styling(this.cursorColor);
  final Color cursorColor;
  static const accentColor = Colors.deepPurpleAccent;

  @override
  Widget build(BuildContext context) {
    return Theme(
//      data: Theme.of(context).copyWith(
//        cursorColor: Theme.of(context).accentColor,
//      ),
        );
  }
}

Я также пытался редактировать файлы пакета напрямую, но это также не увенчалось успехом.

Кто-нибудь предлагал, как отредактировать цвет курсора и загрузочный цвет счетчика пакета flappy_search_bar?

1 Ответ

0 голосов
/ 11 марта 2020

Я тоже пытался это сделать и сумел это сделать.

Чтобы отредактировать курсор, примените следующее к верхнему уровню MaterialApp под ThemeData:

cursorColor: Colors.red,
cupertinoOverrideTheme: CupertinoThemeData(
    primaryColor: Colors.red,
),

. Это устанавливает цвет курсора в ALL TextFields, Я не знаю, как отредактировать его только для TextField в виджете flappy_search_bar

Для указания загрузки добавьте это под SearchBar, который вы используете:

SearchBar<SomeClass>(
....
loader: const Center(child: CircularProgressIndicator(valueColor: AlwaysStoppedAnimation<Color>(Colors.red))),
....
);

Это то, что виджет делает внутри, если вы посмотрите на источник. Измените Colors.red на любой нужный вам цвет.

Надеюсь, это поможет.

...