Flutter ElevatedButton – On Primary Color
To set specific foreground color, also on-primary color, for ElevatedButton widget, set onPrimary
property in ButtonStyle set to style
property of this ElevatedButton with required Color value.
Syntax
ElevatedButton(
child: const Text('Submit'),
onPressed: () {},
style: ElevatedButton.styleFrom(
onPrimary: Colors.lightGreenAccent,
),
),
Example
Flutter Application with two ElevatedButton widgets. Foreground color of first button is set to Colors.black
and the foreground color of second button is set to Colors.lightGreenAccent
.
main.dart
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
/// main application widget
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
static const String _title = 'Flutter Application';
@override
Widget build(BuildContext context) {
return MaterialApp(
title: _title,
home: Scaffold(
appBar: AppBar(title: const Text(_title)),
body: const MyStatefulWidget(),
),
);
}
}
/// stateful widget that the main application instantiates
class MyStatefulWidget extends StatefulWidget {
const MyStatefulWidget({Key? key}) : super(key: key);
@override
State<MyStatefulWidget> createState() => _MyStatefulWidgetState();
}
/// private State class that goes with MyStatefulWidget
class _MyStatefulWidgetState extends State<MyStatefulWidget> {
@override
Widget build(BuildContext context) {
return Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
ElevatedButton(
child: const Text('Submit'),
onPressed: () {},
style: ElevatedButton.styleFrom(
onPrimary: Colors.black,
),
),
const SizedBox(height: 30,),
ElevatedButton(
child: const Text('Submit'),
onPressed: () {},
style: ElevatedButton.styleFrom(
onPrimary: Colors.lightGreenAccent,
),
),
],
),
);
}
}
Screenshot