re: vizoli
Köszi a segítséget. Majd megpróbálom másképp megcsinálni az alkalmazást, hogy ne kelljen a maintainAspectRatio-t false-ra állítani.
re: vizoli
Köszi a segítséget. Majd megpróbálom másképp megcsinálni az alkalmazást, hogy ne kelljen a maintainAspectRatio-t false-ra állítani.
re: tomipont
Probald ki igy (nyilvan a width es height ertekeket ird at):
<mx:Canvas > <mx:SWFLoader id="swfLoader" width="235" height="220" scrollRect="{new Rectangle(0,0,swfLoader.width,swfLoader.height)}" /> </mx:Canvas>
re: vizoli
Már biztos eleged van belőlem:-) de már mikor először mondtad, akkor kipróbáltam SWFLoader-el, sőt most is azzal csinálom (tegnap óta), és ugyanúgy viselkedik, mint az Image.
re: tomipont
Nezd, az Image komponens nem swf tartalmak megjelenitesere valo, tehat nem szabad csodalkozni azon, hogy nem mukodik helyesen veluk.
Amint mar azt irtam, hasznalj SWFLoader-t, vagy irj egy sajat komponenst, ami mindkettot kezeli!
re: vizoli
Kipróbáltam a scaleContent-et, de semmi változást nem okoz. Olyan mintha maintainAspectRatio=true-nál figyelembe venné a stage méretét (gondolom az alapján számolja az aspectRatio-t), false-nál viszont nem.
re: tomipont
A scaleContent tulajdonsagot allitsd true-ra!
Egy lépéssel sikerült előrébb jutnom a megoldásban. A méretezési probléma akkor jön elő, ha az Image.maintainAspectRatio = false. Ha ez nincs beállítva, vagyis true, akkor jó a méretezés. Nekem viszont az kell hogy a content felvegye az Image méreteit, akár torzulva is, tehát a maintainAspectRatio-nak false-nak kell lennie.
Erre nincs valami ötleted?
re: vizoli
Köszi a megoldást, de nálam ez nem működik. Az igaz hogy maszkszerűen letakarja azt a részt ami kívül esik a scrollRect méretein, de ettől még nem méreteződik át a hibás méretekkel betöltött swf, vagyis ahogy a képen is látod kisebb méretben jelenik meg.
A másik probléma meg az hogy az így hibásan betöltött swf méretét sem ismerem, mert a content.loaderInfo.width/height is a jó méretet adja vissza, miközben nem úgy jelenik meg.
Az igaz hogy én AS-ben hozom létre az Image komponenst, így ott adom meg a scrollRect-et is. Ez lehet probléma?
re: tomipont
Leirtam a megoldast, mit szeretnel, mit irjunk meg? :)
Az Image komponens mérete a betöltendő SWF eredeti méretével egyenlő, de a betöltött SWF már kisebben jelenik meg, és még az oldalaránya sem stimmel.
Ha ugyanezt az SWF-et egy Canvas backgroundImage-eként töltöm be, akkor teljesen jól jelenik meg. Arra tudok gondolni, hogy a Canvasban embeddelve van, az Image-ben pedig dinamikusan töltődik, és így valami időzítési probléma lehet.
Annyit már megtettem hogy a betöltés csak akkor indul, ha az Image már túl van a CreationComplete eseményen, de ez nem segített.
Előre is köszi!
Itt egy ábra:
re: tomipont
Swf file-okat nem tul celszeru Image komponensbe tenni, erre talaltak ki az SWFLoader komponenst!
Az swf maszkolasi problemat ketfelekeppen lehet megoldani, itt az egyik, amelyiket en hasznalom:
<mx:SWFLoader id="swfLoaderID" width="235" height="220" scrollRect="{new Rectangle(0,0,swfLoaderID.width,swfLoaderID.height)}" />
Sziasztok!
Egy olyan alkalmazást csinálok, amiben Kép és Swf tartalmak töltődnek be dinamikusan Image komponensekbe.
Vannak viszont olyan Swf tartalmak, amik nem jó méretben töltődnek be. Ezek maszkolt swf-ek, amikben a stage-en kívül is lehetnek elemek, de normálisan csak a betöltött swf stage területének kellene látszani betöltés után, úgy hogy kitölti az Image komponens területét, ezzel szemben úgy jelenik meg, hogy a betöltött swf stage területe az Image komponens bal felső sarkában jelenik meg kisebb és torzított méretben, a jobb oldalon és az alján pedig üres sterületek maradnak. Olyan mintha érzékelné a stage-en kívüli elemeket is, és belevenné az swf méretébe, de nem jelennek meg csak üres helyet tart fenn nekik. Nehéz jól leírni, de remélem nagyjából érthető vagyok.
Van valami tippetek?
Köszi!
Zárolt topik, további üzenetek írása nem lehetséges.