build method
Builds the UI of the AudioModeSelectDialog
Implementation
@override
Widget build(BuildContext context) {
String message = "Select the audio mode";
return AlertDialog(
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)),
actionsPadding: const EdgeInsets.only(left: 20, right: 20, bottom: 10),
backgroundColor: themeBottomSheetColor,
insetPadding: const EdgeInsets.symmetric(horizontal: 20, vertical: 8),
contentPadding:
const EdgeInsets.only(top: 20, bottom: 15, left: 24, right: 24),
title: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
HMSTitleText(
text: "Change Audio Mode",
fontSize: 20,
letterSpacing: 0.15,
textColor: themeDefaultColor,
),
const SizedBox(
height: 8,
),
HMSSubtitleText(text: message, textColor: themeSubHeadingColor),
],
),
content: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
Container(
padding: const EdgeInsets.only(left: 10, right: 5),
decoration: BoxDecoration(
color: themeSurfaceColor,
borderRadius: BorderRadius.circular(10.0),
border: Border.all(
color: borderColor, style: BorderStyle.solid, width: 0.80),
),
child: DropdownButtonHideUnderline(
child: HMSDropDown(
dropDownItems: <DropdownMenuItem>[
...HMSAudioMode.values
.map((audioMode) => DropdownMenuItem(
value: audioMode,
child: HMSTitleText(
text: audioMode.name,
textColor: themeDefaultColor,
fontWeight: FontWeight.w400,
),
))
.toList(),
],
iconStyleData: IconStyleData(
icon: const Icon(Icons.keyboard_arrow_down),
iconEnabledColor: themeDefaultColor,
),
selectedValue: valueChoose,
updateSelectedValue: _updateDropDownValue)),
),
],
),
actions: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
ElevatedButton(
style: ButtonStyle(
shadowColor: MaterialStateProperty.all(themeSurfaceColor),
backgroundColor:
MaterialStateProperty.all(themeBottomSheetColor),
shape: MaterialStateProperty.all<RoundedRectangleBorder>(
RoundedRectangleBorder(
side: const BorderSide(
width: 1, color: Color.fromRGBO(107, 125, 153, 1)),
borderRadius: BorderRadius.circular(8.0),
))),
onPressed: () => Navigator.pop(context, false),
child: Padding(
padding:
const EdgeInsets.symmetric(vertical: 12, horizontal: 10),
child: Text('Cancel',
style: HMSTextStyle.setTextStyle(
color: themeDefaultColor,
fontSize: 16,
fontWeight: FontWeight.w600,
letterSpacing: 0.50)),
)),
ElevatedButton(
style: ButtonStyle(
shadowColor: MaterialStateProperty.all(themeSurfaceColor),
backgroundColor: MaterialStateProperty.all(hmsdefaultColor),
shape: MaterialStateProperty.all<RoundedRectangleBorder>(
RoundedRectangleBorder(
side: BorderSide(width: 1, color: hmsdefaultColor),
borderRadius: BorderRadius.circular(8.0),
))),
onPressed: () => {
if (valueChoose == null)
{
Utilities.showToast("Please select audioMode"),
}
else
{Navigator.pop(context), widget.changeAudioMode(valueChoose!)}
},
child: Padding(
padding:
const EdgeInsets.symmetric(vertical: 12, horizontal: 10),
child: Text(
'Change',
style: HMSTextStyle.setTextStyle(
color: themeDefaultColor,
fontSize: 16,
fontWeight: FontWeight.w600,
letterSpacing: 0.50),
),
),
),
],
)
],
);
}