class GestureRecognizerWidget extends StatefulWidget {
const GestureRecognizerWidget({Key? key, required this.title})
: super(key: key);
final String title;
@override
State<GestureRecognizerWidget> createState() {
return GestureRecognizerState();
}
}
class GestureRecognizerState extends State<GestureRecognizerWidget> {
final TapGestureRecognizer _tapGestureRecognizer = TapGestureRecognizer();
bool _toggle = false;
@override
void dispose() {
_tapGestureRecognizer.dispose();
super.dispose();
} //变色开关
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text(widget.title)),
body: Center(
child: Text.rich(
TextSpan(
children: [
const TextSpan(text: "你好Flutter"),
TextSpan(
text: "点击变色",
style: TextStyle(
fontSize: 30,
color: _toggle ? Colors.blue : Colors.red,
),
recognizer: _tapGestureRecognizer
..onTap = () {
setState(() {
_toggle = !_toggle;
});
}
),
const TextSpan(text: "你好Dart")
]
)
),
),
);
}
}