2011-07-14 33 views
1

编写一个小应用程序以演示某些功能。我有一个嵌入式资源被添加到舞台上,然后有一些监听器添加到它,所以它可以拖动。该数据存储在远程共享对象中,以便其他客户端也可以拖动该对象。Actionscript中的嵌入式资源在显示时被翻转!

问题是我的对象被水平翻转时加载...和想法,为什么发生这种情况?

代码在这里:http://pastebin.com/TjegG71W

+0

这很奇怪。在你的代码中没有看到任何可能的东西..你可以尝试一些理智的检查,比如用一个jpeg或一个不同的组件(如标签或其他)替换PNG吗?我的猜测是关于png或png解码器的一些事情,使得Flash只是简单地向后读取它。 – fenomas

+0

尝试清理您的项目并重建它。 –

+0

标签显示正常..清理并重建项目并尝试了JPEG。 :P – NotCoffeeTable

回答

1

Flex 4.1中引入了一个名为Layout Mirroring的新功能。升级到Flex 4.5应该解决这些问题,如果您无法升级,可以尝试在应用程序上将layoutDirection样式设置为“ltr”。

+0

实际上必须将其设置为“rtl”,但解释它。谢谢! – NotCoffeeTable

0

既然你说这只是一个演示或概念验证,可以直到我们得到它的底部修复此显示。这种添加到您所创建的组件线45ish:

bannerui = new UIComponent(); 
bannerui.scaleX = -1; 

对于调试是怎么回事 - 我有一种预感,则scaleX属性会在某一时刻得到抬高周围和越来越设置为-1其中一个组件。让我们试着添加监听它,看看哪些得到追溯到控制台(添加到翻动的图像的任何其他父组件以及):

线45ish:

bannerui = new UIComponent(); 
bannerui.addEventListener('scaleXChanged' , onScaleXChanged); 

添加这个方法:

private function onScaleXChanged(e :Event){ 
     trace(bannerui.scaleX); 
    } 
+0

谢谢,明天我会再拍。我暂时有一个scaleX = -1。将回报。 – NotCoffeeTable

+0

另外,您可以使用未公开的事件(scaleXChanged):D – Nate

+0

在那里没有任何事情发生,检查了uicomponent和位图对象。 – NotCoffeeTable

0

我正在建立一个4.1.0 ...专为4.5.1和它的作品..

修复:升级的Flex SDK:P