在我之前的应用程序中,我想要使用iOS 11功能进行更新。所以现在我在代码下面使用
NavigationItem.SetHidesBackButton(false, false);
var negativeSpacae = new UIBarButtonItem(UIBarButtonSystemItem.FixedSpace);
UIButton button = new UIButton(new RectangleF(0, 0, 30, 30));
button.SetImage(UIImage.FromFile("backbutton"), UIControlState.Normal);
button.TintColor = UIColor.White;
button.BackgroundColor = UIColor.Red;
var widthconstraint = button.WidthAnchor.ConstraintEqualTo(27);
var heightconstraint = button.HeightAnchor.ConstraintEqualTo(20);
widthconstraint.Active = true;
heightconstraint.Active = true;
UIBarButtonItem[] bArray = {
negativeSpacae, new UIBarButtonItem (button)
};
NavigationItem.SetLeftBarButtonItems(bArray, true);
button.TouchUpInside += (sender, e) =>
{
this.NavigationController.PopViewController(true);
};
if (UIDevice.CurrentDevice.CheckSystemVersion(11, 0))
{
ViewRespectsSystemMinimumLayoutMargins = false;
View.LayoutMargins = UIEdgeInsets.Zero;
}
显示在输出下方:
在此输出中,按钮图像是拉伸的,并且显示的尺寸更合适。
我期待的是我的按钮图像是左侧没有拉伸。
任何帮助都会得到赞赏。
答案 0 :(得分:0)
在此输出中,按钮图像是拉伸的,并且显示的尺寸更合适。
原因:图像尺寸(宽*高)比按钮尺寸大。您可以检查应用程序文件夹中的图像文件,它应该大于27 * 20.
解决方案:button.ImageView.ContentMode = UIViewContentMode.ScaleAspectFit;