internal static double GetThemeAttributeDp(this Context self, int resource) { using (var value = new TypedValue()) { if (!self.Theme.ResolveAttribute(resource, value, true)) { return(-1); } var pixels = (double)TypedValue.ComplexToDimension(value.Data, self.Resources.DisplayMetrics); return(self.FromPixels(pixels)); } }
private double GetThemeAttributeDp(int resource) { using (var outValue = new TypedValue()) { if (!this.Context.Theme.ResolveAttribute(resource, outValue, true)) { return(-1.0); } double pixels = TypedValue.ComplexToDimension(outValue.Data, this.Context.Resources.DisplayMetrics); return(this.Context.FromPixels(pixels)); } }
public static double GetThemeAttributePixels(this Context self, int resource) { using (var value = new TypedValue()) { if (self == null || self.Theme == null) { return(-1); } if (!self.Theme.ResolveAttribute(resource, value, true)) { return(-1); } return((double)TypedValue.ComplexToDimension(value.Data, self.Resources?.DisplayMetrics)); } }