本当に必要な回線速度が分からず、コミュファ光のプランを悩んでいたり、1G・5G・10Gのプランに加入していて料金を安く抑えたい方向けの記事です。 結論 一般的な家庭は300Mホームプランで充分です。 …
flutterのElevatedButtonを押したら背景色やアイコンをトグルで切り替える方法です。
ボタンの状態(State)である背景色・アイコンを持つことになるため、 StatefulWidget
を使用します。
NotificationButton.dart
import 'package:flutter/material.dart'; class NotificationButton extends StatefulWidget { @override _NotificationButtonState createState() => _NotificationButtonState(); } class _NotificationButtonState extends State<NotificationButton> { bool isPressed = false; IconData icon = Icons.notifications; MaterialColor primaryColor = Colors.blue; @override Widget build(BuildContext context) { return ElevatedButton.icon( icon: Icon( this.icon, color: Colors.yellow, ), label: const Text('通知する'), style: ElevatedButton.styleFrom( primary: this.primaryColor, onPrimary: Colors.white, ), onPressed: () { this.isPressed = !this.isPressed; setState(() { this.icon = this.isPressed ? Icons.notifications_active : Icons.notifications; this.primaryColor = this.isPressed ? Colors.orange : Colors.blue; }); }, ); } }
コメントを書く