Issue
I wanted to change my favicon whether pushing in it but it is not happening because I cannot use the int value to control it. Here is my code example=>
class _WebViewExampleState extends State<WebViewExample> {
final Completer<WebViewController> _controller = Completer<WebViewController>();
int ctr=0;
...
floatingActionButton: favoriteButton(),
...
Widget favoriteButton() {
return FutureBuilder<WebViewController>(
future: _controller.future,
builder: (BuildContext context,
AsyncSnapshot<WebViewController> controller) {
if (controller.hasData) {
return FloatingActionButton(
backgroundColor: Colors.indigo,
onPressed: () async {
final String url = (await controller.data!.currentUrl())!;
// ignore: deprecated_member_use
Scaffold.of(context).showSnackBar(
SnackBar(content: Text('Favorited $url')),
);
setState(() {
ctr++;
});
},
child: const Icon(Icons.favorite,
<this place where i got the mistake>
color: this.ctr%2==1 ? Colors.red : Colors.white),
</this place where i got the mistake>
);
}
return Container();
});
}
}//end of the top row.
I mentioned the above as HTML tag "this place where I got the mistake". The mistake is Invalid constant value I also tried to declare the variable inside of favoriteButton.Why cannot use the variable to check conditions? Is anyone to help me?
Solution
please remove const from icons widget
please check my code
child: Icon(Icons.favorite,
<this place where i got the mistake>
color: this.ctr%2==1 ? Colors.red : Colors.white),
</this place where i got the mistake>
);
doing by that you can use mutable values
Answered By - Jinto Joseph
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.