原创:嵌入图片的HTML内容在FLASH AS3中正确显示的最佳解决方案
做一個項目,遇到這個該死的問題,嘗試了幾乎所有解決方法,幾近崩潰,終于找到完美解決方案。因為在網上,無論中文還是英文,搜索了無數遍,都沒人給出正確答案,所以,在此記下,但愿能幫到跟我一樣遇到這個問題的人們。
1,TextField + UIScrollBar方法:
該方法對于普通的HTML沒有問題,對于文本就足以顯示滾動條的情況,也沒有問題,但如果你像我一樣,只有一句話介紹,加一個圖片,你就會發現,怎么樣也無法顯示滾動條。圖片被切掉一半,原因是Htmltext中的img圖片是后載入的,也就是說,你加上scrollbar時,textfield的高度根本不足以顯示滾動條。為了解決這個問題,我甚至試過用getimagerefrence方法監聽img圖片的載入事件,然后重新用uiscrollbar.update來重繪滾動條。但是,很遺憾,理論上行得通的辦法,實際上,是沒有用的。
2,直接用textarea
textarea實際上就是上面的組合。結果不用說啦,還是沒法解決。
3,終極方案:Textfield+ScrollPane
最終的解決方法,是建一個textfield,將其multiline和wordwrap設為true,再將其width設置好,將autosize設置成left,將scrollpane的source指向該textfield。最終,問題終于正常解決。注意:multiline一定要設置成true,不然,你的所有段落都會合并成一段的,這個小故事讓我卡了半天才反應過來。下面是我的一小段實現這個功能的AS3代碼。
?
代碼 var?t_content:TextField=new?TextField();????t_content.x=0;
????t_content.y=0;
????t_content.multiline=true;
????t_content.border=true;
????t_content.styleSheet=ContentStyle;
????t_content.width=box.width;
????t_content.autoSize="left";
????t_content.condenseWhite=true;
????t_content.wordWrap=true;
????t_content.htmlText=p_content;
????box.addChild(t_content);
????var?aSp:ScrollPane?=?new?ScrollPane();
????box.addChild(aSp);
????aSp.source?=?t_content;
????aSp.horizontalScrollPolicy=ScrollPolicy.OFF;
????aSp.setSize(t_content.width,?340);
?
?
轉載于:https://www.cnblogs.com/Heroman/archive/2010/08/20/1804120.html
總結
以上是生活随笔為你收集整理的原创:嵌入图片的HTML内容在FLASH AS3中正确显示的最佳解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 八卦人多,求以前看过的电视名称?
- 下一篇: [转帖][实用]Linux 释放内存方法