/// <summary> /// Gets the value as a specified type from preference key. /// </summary> /// <returns>The value from preference key.</returns> /// <param name="defaults">Defaults.</param> /// <param name="key">Key.</param> /// <param name="defaultValue">Default value.</param> /// <typeparam name="T">The 1st type parameter.</typeparam> public static T GetValueFromPreferenceKey <T>(this NSUserDefaults defaults, string key, T defaultValue = default(T)) { try { return((T)Convert.ChangeType(defaults.GetPreferenceItemDefaultValue(key).ToString(), typeof(T))); } catch (Exception) { return(defaultValue); } }
/// <summary> /// Int from preference key. /// </summary> /// <returns>The from preference key.</returns> /// <param name="defaults">Defaults.</param> /// <param name="key">Key.</param> /// <param name="defaultValue">Default value.</param> public static int IntFromPreferenceKey(this NSUserDefaults defaults, string key, int defaultValue = 0) { try { return(int.Parse(defaults.GetPreferenceItemDefaultValue(key).ToString())); } catch (Exception e) { System.Diagnostics.Debug.WriteLine(e); return(defaultValue); } }
/// <summary> /// String from preference key. /// </summary> /// <returns>The from preference key.</returns> /// <param name="defaults">Defaults.</param> /// <param name="key">Key.</param> public static string StringFromPreferenceKey(this NSUserDefaults defaults, string key) { return(defaults.GetPreferenceItemDefaultValue(key)?.ToString() ?? string.Empty); }