我希望使用Visual Studio 2013和最新的Xamaring版本在我的基于Xamarin Forms的Android项目中显示60 * 60像素的png图像。
我按照以下步骤操作:
protected static Image CreateHeaderLeftImage() { Image image = new Image(); image.Source = Device.OnPlatform(null, ImageSource.FromFile("image.png"), null); image.WidthRequest = 60; image.HeightRequest = 60; image.VerticalOptions = LayoutOptions.Center; image.HorizontalOptions = LayoutOptions.Center; return image; }
public static Page GetMainPage() { ContentPage contentPage = new ContentPage(); contentPage.Content = CreateHeaderLeftImage(); return contentPage; }
图像显示在页面中间,高度加倍,宽度加倍!我做了我的页面截图并测量了图像,它是120 * 120而不是60 * 60!
我从许多Xamarin示例中重用了上面的代码!
为什么图像会放大?
答案 0 :(得分:1)
Xamarin.Forms不使用像素来调整视图元素的大小。
http://forums.xamarin.com/discussion/18255/coordinate-units
所以你没有指定60px的东西,但是Android的情况是60dpi。