У меня есть подклассификация кнопки, так что я могу получить в основном кнопку с закругленными краями и значок с правой стороны.Изображение кнопки не центрируется по вертикали
По правде говоря, только проблема заключается в том, что значок не центрирован по вертикали и не может понять, как я могу влиять на вертикальное выравнивание.
Исходное изображение имеет прямоугольную форму, и я использую CreateResizableImage с предопределенными UIEdgeInsets структуры, как показано ниже, но то, что я вижу это:
МОЯ подкласс код:
partial class CustomGreyButton : UIButton
{
public CustomGreyButton (IntPtr handle) : base (handle)
{
this.Layer.BorderColor = new CoreGraphics.CGColor (0, 0, 0);
this.Layer.BorderWidth = 1;
this.Layer.CornerRadius = 20;
// top, left, bottom, right
UIEdgeInsets btnEdgeInsets = new UIEdgeInsets (0,44,0,44);
UIImage stretchingButtonImage = new UIImage ("ios_images/grey_btn.png").CreateResizableImage (btnEdgeInsets);
this.SetBackgroundImage (stretchingButtonImage, UIControlState.Normal);
this.SetBackgroundImage (stretchingButtonImage, UIControlState.Selected);
this.SetBackgroundImage (stretchingButtonImage, UIControlState.Highlighted);
this.ClipsToBounds = true;
this.AdjustsImageWhenHighlighted = false;
//this.TitleColor = UIColor.White;
this.SetTitleColor (UIColor.White, UIControlState.Normal);
this.SetTitleColor (UIColor.Black, UIControlState.Highlighted);
this.SetTitleColor (UIColor.Black, UIControlState.Selected);
}
}
Может вам загрузите графику, которую вы пытаетесь добавить. Ваши UIEdgeInsets не выглядят правильно, но трудно сказать, не видя графику. – JordanMazurke