private void ShowColorPicker(string key) { var dialog = new ColorPickerDialog(Context); dialog.SetInitialColor(GetColorForThemeElement(key)); dialog.ColorSelected += (sender, e) => { if (BASE_COLOR_NAME.Equals(key)) { mTheme.Base = e.Color; } else if (HIGHLIGHT_COLOR_NAME.Equals(key)) { mTheme.Highlight = e.Color; } else if (LOWLIGHT_COLOR_NAME.Equals(key)) { mTheme.Lowlight = e.Color; } else if (HIGH_CONTRAST_COLOR_NAME.Equals(key)) { mTheme.HighContrast = e.Color; } else if (SECONDARY_TEXT_COLOR_NAME.Equals(key)) { mTheme.SecondaryText = e.Color; } else if (MUTED_COLOR_NAME.Equals(key)) { mTheme.Muted = e.Color; } SetColorForThemeElement(key, e.Color); }; dialog.Show(); }