关于Adobe AIR 1.1 for Linux beta
Adobe 前几天发布了Adobe AIR 1.1 for Linux beta版;我在ubuntu 7.10上下载安装了Adobe AIR for Linux Beta版,然后安装了一下自己前面做的海词(DICT.CN)Adobe AIR版 ,其他功能都正常,只发现所有界面透明部分都是黑色,查了下资料发现,这是linux下系统外观设置的问题,一般情况下,无外观显示效果的linux图形界面下是不支持透明,只需在ubuntu 的 系统首选项\外观\显示效果 中选择增强显示相关或更好的扩展显示效果,Adobe air的应用程序界面就可以正常的显示透明效果了。
这样就需要针对这一问题在Adobe air程序设计时做平台兼容性考虑,这在Adobe air的NativeWindow类有一个属性supportsTransparency,这一属性指示操作系统是否能够绘制透明窗口。在 Mac OS 和 Windows 上,此属性的值始终为 true。 在 Linux 上,此属性的值与 Linux 分发版本的配置有关(也就是上面所说的linux图形界面外观显示效果设置)。若 NativeWindow.supportsTransparency 为 false,则无论窗口transparent 属性为何值,所有像素的不透明度都将设为 1,完全透明的像素将呈现黑色。
因此需要在Adobe air程序界面显示代码中增加这一属性的检测,以便针对不同的系统性能做不同的界面显示。
补充说明:supportsTransparency 属性是Adobe AIR 1.1新增的特性,之前的版本不支持此属性,另外注意它是NativeWindow类的一个静态属性,所以可以直接通过NativeWindow.supportsTransparency 的方式访问,而不能通过NativeWindow类的实例来访问。
Trackback地址: http://flash.moligu.com/43/trackback

您好!想向您询问一个其他有关于 AIR 的问题,我用的不是 ubuntu,是 Arch,下载安装了 adobeair_linux_sdk_b1_091508.tbz2,之后,发现在使用基于 AIR 的程序如 twhirl 一类的时候,头一次可以使用输入法(fcitx/ibus)输入中文,但是一旦切换到其他程序再切换回来,就无法再呼出输入法了……不知道您是否有此种情况呢?
谢谢!
你好!你说的这个问题,我以前还没注意到,看了你的留言我在我的air程序上试了一下,和你描述的问题一样,因此我想这不是linux版本的问题,也不是air应用程序的问题,应该是adobe air for linux版的运行时的bug问题。
[...] AIR的问题,而是linux显示模式的问题,具体可以看我的这篇文章关于Adobe AIR 1.1 for Linux beta;只要在Adobe AIR应用开发中做些平台能力判断,做差异性处理就可以是Adobe [...]