更改滑块上缩略图的位置

Change the position of thumb image on the slider bar

我按照下面 link 中的建议添加了缩略图来自定义滑块。 https://github.com/xamarin/recipes/tree/master/Recipes/ios/standard_controls/sliders/specify_slider_appearance

默认情况下,图像附加到栏的中心。我想把它移到图像的底部。 任何人都可以帮助我。 我想要如图所示 here.

创建一个下半部分完全透明的图像并将其设置为缩略图。像这样:

您可以自定义 UISlider 并覆盖 ThumbRectForBounds 方法。方法 Returns 滑块缩略图的绘制矩形。

代码:

public partial class ViewController1 : UIViewController 
{
    public ViewController1() : base("ViewController1", null)
    {
    }

    public override void ViewDidLoad()
    {
        base.ViewDidLoad();

        MySlider slider = new MySlider();
        slider.Frame = new CGRect(50, 50, 100, 20);
        View.Add(slider);
    }
}


public class MySlider : UISlider
{
    public MySlider()
    {
        this.SetThumbImage(UIImage.FromFile("1.png"), UIControlState.Normal);
    }

    public override CGRect ThumbRectForBounds(CGRect bounds, CGRect trackRect, float value)
    {
        CGRect rect = base.ThumbRectForBounds(bounds, trackRect, value);
        return new CGRect(rect.X, -10, rect.Width, rect.Height);
    }
}