Ho creato una schermata iniziale estesa per l'applicazione uwp di Windows. Ho seguito il codice di esempio incluso il codice XAML per lo schermo spash esteso da questa paginaWindows UWP Immagine di splash screen estesa non visualizzata correttamente sul cellulare
Display a splash screen for more time
Rende correttamente sulla finestra del desktop, si è centrata perfettamente e allineati esattamente l'immagine iniziale splash screen con, tuttavia quando provo un emulatore mobile, (ho provato uno schermo da 5 pollici a 720p) l'immagine della pagina dello splash screen estesa sembra troppo grande (sembra quasi due o tre volte più grande), e appare tagliata in basso a destra della pagina, sono supponendo che l'anello di avanzamento si trovi sotto l'immagine e si trovi oltre il limite della pagina, non è visibile.
Ecco come appare sul cellulare, l'immagine a sinistra è la schermata iniziale iniziale e quella a destra è la pagina iniziale estesa.
mio XAMLfor la splash page esteso è come questo
<Page
x:Class="MyApp_Win10.ExtendedSplash"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:MyApp_Win10"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<Grid Background="#FF000012" >
<Canvas>
<Image x:Name="extendedSplashImage" Source="Assets/SplashScreen/SplashScreenImage3.png"/>
<ProgressRing Name="splashProgressRing" IsActive="True" Width="60" Height="60" HorizontalAlignment="Center"></ProgressRing>
</Canvas>
</Grid>
</Page>
E il mio package.appmanifest simile a questa. (V'è un'immagine nelle Attività forlder che è stato creato come SplashScreenImage3.scale-200.PNG con dimensioni 1240 lx 600 h)
EDIT: ho aggiunto un'immagine il rimanente 3 scale 150, 125 e 100 al pacchetto.appmanifest ma non ha fatto alcuna differenza. Dal momento che la pagina iniziale estesa non è la stessa della pagina iniziale iniziale, penso che stia scegliendo il file immagine esatto che scrivo in XAML, che è la dimensione piena della dimensione 1240 x 600 ore.
Anche nel codebehind per Splash esteso, queste sono le coordinate della schermata iniziale
EDIT: mio positionImage() e PositionRing() Funzioni
void PositionImage()
{
extendedSplashImage.SetValue(Canvas.LeftProperty, splashImageRect.X);
extendedSplashImage.SetValue(Canvas.TopProperty, splashImageRect.Y);
extendedSplashImage.Height = splashImageRect.Height;
extendedSplashImage.Width = splashImageRect.Width;
}
void PositionRing()
{
splashProgressRing.SetValue(Canvas.LeftProperty, splashImageRect.X + (splashImageRect.Width * 0.5) - (splashProgressRing.Width * 0.5));
splashProgressRing.SetValue(Canvas.TopProperty, (splashImageRect.Y + splashImageRect.Height + splashImageRect.Height * 0.1));
}
Set Canvas.ZIndex e utilizzare il pannello di relativa all'interno tela –
si prega di inviare il vostro positionImage() e metodi (PositionRing) – sjs