Izrada Silverlight preloader ekrana
Silverlight po defaultu dolazi sa loader splash ekranom, koji je sve samo ne lijep. Neznam za čitatelje ovog teksta, ali ja čim vidim gradijente, odnosno prijelaze, još u kružnom obliku, dobijem iznenadnu želju za skakanjem sa vrha zgrade. Srećom, da ne bi slučajno došlo do realizacije tih želja gledajući brojna učitavanja Silverlight aplikacija, zamjena ekrana učitavanja je vrlo jednostavna.
Iz sljedećeg prikaza može se vidjeti slijed učitavanja aplikacije:
Splash screen i događaji koji ispisuju postotak učitavanja su u biti jedna XAML datoteka i Javascript metoda koja se poziva na promjenu postotka učitavanja i vrši interakciju sa elementima prikazanom XAML ekranu.
Postupak izrade izgleda ovako:
1. U jednoj XAML datoteci je potrebno pripremiti izgled ekrana. Ovdje se nalazi primjer takve datoteke,
2. Javascript metoda služi za prikaz i animiranje tog ekrana (potrebno dodati u posebnu JS datoteku i referencirati ju iz Head elementa od web stranice):
function SourceDownloadProgressChanged(s, e) { var bartext = s.findname("bartext"); var bar = s.findname("bar"); if (bartext != null || bar != null) { var value = Math.round(e.progress * 100) bartext.Text = value + "%"; var newWidth = 3.3 * value; bar.Width = Math.round(newWidth) } }
3. Dodatni parametri unutar poziva Silverlight aplkacije (u html/aspx, <object> element):
<param value="preloader.xaml" name="splashscreensource" />
<param value="SourceDownloadProgressChanged" name="onSourceDownloadProgressChanged" />