void OnTap(object sender, EventArgs e) { var control = Control ?? Container; var text = ToolTipEffect.GetText(Element); if (!string.IsNullOrEmpty(text)) { tooltip.BubbleColor = ToolTipEffect.GetBackgroundColor(Element).ToUIColor(); tooltip.ForegroundColor = ToolTipEffect.GetTextColor(Element).ToUIColor(); tooltip.Text = new Foundation.NSString(text); var heightArrow = ToolTipEffect.GetArrowHeight(Element); if (heightArrow > 0.0) { tooltip.ArrowHeight = Convert.ToSingle(heightArrow); } var widthArrow = ToolTipEffect.GetArrowWidth(Element); if (widthArrow > 0.0) { tooltip.ArrowWidth = Convert.ToSingle(widthArrow); } UpdatePosition(); var window = UIApplication.SharedApplication.KeyWindow; var vc = window.RootViewController; while (vc.PresentedViewController != null) { vc = vc.PresentedViewController; } tooltip?.Show(control, vc.View, true); } }
protected override void OnElementPropertyChanged(PropertyChangedEventArgs args) { base.OnElementPropertyChanged(args); if (args.PropertyName == ToolTipEffect.BackgroundColorProperty.PropertyName) { tooltip.BubbleColor = ToolTipEffect.GetBackgroundColor(Element).ToUIColor(); } else if (args.PropertyName == ToolTipEffect.TextColorProperty.PropertyName) { tooltip.ForegroundColor = ToolTipEffect.GetTextColor(Element).ToUIColor(); } else if (args.PropertyName == ToolTipEffect.TextProperty.PropertyName) { tooltip.Text = new Foundation.NSString(ToolTipEffect.GetText(Element)); } else if (args.PropertyName == ToolTipEffect.ArrowWidthProperty.PropertyName) { var widthArrow = ToolTipEffect.GetArrowWidth(Element); tooltip.ArrowWidth = Convert.ToSingle(widthArrow); } else if (args.PropertyName == ToolTipEffect.ArrowHeightProperty.PropertyName) { var heightArrow = ToolTipEffect.GetArrowHeight(Element); tooltip.ArrowWidth = Convert.ToSingle(heightArrow); } else if (args.PropertyName == ToolTipEffect.PositionProperty.PropertyName) { UpdatePosition(); } }
private void GetToolTip() { var control = Control ?? Container; var text = ToolTipEffect.GetText(Element); if (!string.IsNullOrEmpty(text)) { var position = ToolTipEffect.GetPosition(Element); builder = new Tooltip.Builder(control); switch (position) { case ToolTipPosition.Top: builder.SetGravity((int)GravityFlags.Top); break; case ToolTipPosition.Left: builder.SetGravity((int)GravityFlags.Left); break; case ToolTipPosition.Right: builder.SetGravity((int)GravityFlags.Right); break; case ToolTipPosition.Bottom: builder.SetGravity((int)GravityFlags.Bottom); break; default: builder.SetGravity((int)GravityFlags.NoGravity); break; } builder.SetText(text); builder.SetCornerRadius(Convert.ToSingle(ToolTipEffect.GetCornerRadius(Element))); builder.SetDismissOnClick(true); builder.SetBackgroundColor(ToolTipEffect.GetBackgroundColor(Element).ToAndroid()); builder.SetTextColor(ToolTipEffect.GetTextColor(Element).ToAndroid()); var heightArrow = ToolTipEffect.GetArrowHeight(Element); if (heightArrow > 0.0) { builder.SetArrowHeight(Convert.ToSingle(heightArrow)); } var widthArrow = ToolTipEffect.GetArrowWidth(Element); if (widthArrow > 0.0) { builder.SetArrowWidth(Convert.ToSingle(widthArrow)); } var textSize = ToolTipEffect.GetTextSize(Element); if (textSize > 0) { builder.SetTextSize(Convert.ToSingle(textSize)); } builder.SetMargin(Convert.ToSingle(ToolTipEffect.GetMargin(Element))); builder.SetPadding(ToolTipEffect.GetPadding(Element)); builder.SetCancelable(true); builder.Build().Show(); // _toolTipsManager?.Show(toolTipView); } }