Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 Flex垂直对齐文本Mac vs Windows_Actionscript 3_Apache Flex_Flex3_Vertical Alignment - Fatal编程技术网

Actionscript 3 Flex垂直对齐文本Mac vs Windows

Actionscript 3 Flex垂直对齐文本Mac vs Windows,actionscript-3,apache-flex,flex3,vertical-alignment,Actionscript 3,Apache Flex,Flex3,Vertical Alignment,我正在研究Flex应用程序中的一个问题,与windows相比,OS X上的文本会上移两个像素。并非每个文本字段都与中间垂直对齐,而是更靠近顶部 在这里找到了一条线索,但没有真正的解决方案 任何人都知道如何以适用于两个系统的方式解决此问题。我的方法是在检测到OS X时有条件地调整组件的位置 <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"

我正在研究Flex应用程序中的一个问题,与windows相比,OS X上的文本会上移两个像素。并非每个文本字段都与中间垂直对齐,而是更靠近顶部

在这里找到了一条线索,但没有真正的解决方案


任何人都知道如何以适用于两个系统的方式解决此问题。

我的方法是在检测到OS X时有条件地调整组件的位置

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
               preinitialize="onPreinitialize()"
               >
    <fx:Script>
        <![CDATA[
            import mx.controls.Alert;

            private function onPreinitialize():void 
            {   
                Alert.show((-1 != Capabilities.os.search(new RegExp('mac', 'i'))) ? 'Replace this Alert with code which adjusts text positioning in order for it to appear the same as when it runs on Windows.' : 'No need to adjust text', Capabilities.os);
            }   
        ]]>
    </fx:Script>
</s:Application>


我相信在css文件中使用@font-face绝对是一个解决方案。然而,需要添加此功能检查似乎会给应用程序带来负担。这很可能是Adobe需要修复的bug。“这很可能是Adobe需要修复的bug。”不幸的是,这在Flex/Adobe中非常常见。如果你仔细研究基类,你会发现注释通常以“这是一个bug/不起作用/应该做什么”开头