Сила всплеска Flutter InkWell — как сделать его более заметным глобально для всего приложения?
В моем флаттер-приложении, когда я нажимаю кнопку (или что-либо, украшенное InkWell), эффект всплеска/рябь очень нежный, почти невидимый. (Он есть, он не прикрытый, просто очень нежный, слишком тонкий).
Когда я использую другие приложения (например, приложение Gmail от Google), каждый раз, когда я что-то нажимаю, эффект всплеска/рябь ОЧЕНЬ сильный и дает пользователю хорошее представление о том, что он/она только что нажал.
Вопрос:
Как усилить эффект всплеска/пульса в приложении флаттера?
1 ответ
Совет для профессионалов : создайте оболочку для InkWell и используйте ее во всем приложении.
class MyInkWell extends StatelessWidget {
const MyInkWell({Key? key, this.child, this.onTap}) : super(key: key);
final VoidCallback? onTap;
final Widget? child;
@override
Widget build(BuildContext context) {
return InkWell(
// customized you want
// splashColor: ,
// focusColor: ,
// hoverColor: ,
// highlightColor: ,
// overlayColor: ,
// radius: ,
onTap: onTap,
child: child,
);
}
}
и используйте свой собственный InkWell
class Home extends StatelessWidget {
const Home({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Center(
child: MyInkWell(
onTap: () {
// on tap callback
},
child: const Icon(Icons.abc))),
),
);
}
}
С уважением