这个bug我已经彻底无语了,居然这么久都没有fix。
解决方法如下:
<SwapChainPanel x:Name="DXSwapChainPanel">
<Grid x:Name="ExtendedSplashGrid" >
<Image x:Name="ExtendedSplashImage" Source="Assets/SplashScreen.png" VerticalAlignment="Center" HorizontalAlignment="Center">
<Image.Projection>
<PlaneProjection RotationZ="90"/>
</Image.Projection>
</Image>
</Grid>
</SwapChainPanel>
private void PositionImage()
{
//get the current core window
CoreWindow coreWindow = CoreWindow.GetForCurrentThread();
#if UNITY_WP_8_1
//Windows Phone
//That "/3" seems to do the correct placement!
ExtendedSplashImage.Margin = new Thickness(0, -coreWindow.Bounds.Height / 3, 0, coreWindow.Bounds.Height / 3); ExtendedSplashGrid.Height = coreWindow.Bounds.Width;
ExtendedSplashGrid.Width = coreWindow.Bounds.Height;
#else
//Windows Metro
ExtendedSplashImage.SetValue(Canvas.LeftProperty, splashImageRect.X);
ExtendedSplashImage.SetValue(Canvas.TopProperty, splashImageRect.Y);
ExtendedSplashImage.Height = splashImageRect.Height;
ExtendedSplashImage.Width = splashImageRect.Width; #endif }