Apache flex AdobeFlex移动舞台尺寸

Apache flex AdobeFlex移动舞台尺寸,apache-flex,mobile,adobe,stage,Apache Flex,Mobile,Adobe,Stage,如何在AdobeFlexMobile中查找舞台或导航区的显示大小和位置?我想能够使一些东西的确切宽度和高度(不使用100%的w&h)。并将顶部放置在舞台顶部。我相信这个描述不是最容易理解的,所以希望这张图片能有所帮助: protected function init(event:FlexEvent):void { if (NativeMaps.isSupported){ NativeMaps.service.

如何在AdobeFlexMobile中查找舞台或导航区的显示大小和位置?我想能够使一些东西的确切宽度和高度(不使用100%的w&h)。并将顶部放置在舞台顶部。我相信这个描述不是最容易理解的,所以希望这张图片能有所帮助:

        protected function init(event:FlexEvent):void
        {
            if (NativeMaps.isSupported){
                NativeMaps.service.addEventListener(Event.ACTIVATE, mapReady2);
                //NativeMaps.service.addEventListener(NativeMapEvent.MAP_CREATED, mapReady);                    
                try{
                    NativeMaps.service.mapOptions.compassEnabled=true;
                    NativeMaps.service.mapOptions.zoomControlsEnabled = true;
                    NativeMaps.service.mapOptions.zoomGesturesEnabled = true;
                    NativeMaps.service.mapOptions.rotateGesturesEnabled = true;
                    NativeMaps.service.mapOptions.myLocationButtonEnabled = true;
                }catch(e:Error){
                }
                var tla:ViewNavigatorApplication=FlexGlobals.topLevelApplication as ViewNavigatorApplication;                   
                var width:Number = tla.width;
                var height:Number = tla.height-tla.actionBar.height;
                var x:Number = 0;
                var y:Number = tla.actionBar.height;

                NativeMaps.service.createMap(width,height,x,y);
            }
        }


我想这就是你需要的:

var tla :ViewNavigatorApplication = FlexGlobals.topLevelApplication as ViewNavigatorApplication;
var width :Number = tla.width;
var height :Number = tla.height=tla.actionBar.height;
var x :Number = 0;
var y :Number = tla.actionBar.height;

然后使用宽度和高度调整组件的大小,并使用x和y值定位组件。我是在浏览器中写的,所以代码中应该有拼写错误。可能存在一些填充问题,使尺寸/位置略有偏差,但您必须尝试一下,看看会得到什么。

我很困惑。。你想要舞台还是领航员?登上舞台;您可以使用顶层应用程序的高度和宽度;把一些东西放在舞台的顶端;将x值设置为零。要在舞台的左上角设置内容,请将y值也设置为零。你能分享一些代码和/或更具体一点吗?我担心我在写的时候会有点困惑。舞台是否包括导航栏?我想要的是导航栏正下方的区域。我正在使用一个显示本地地图的发行版。创建地图时,可以指定宽度、高度、x和y。如果执行stage.width、stage.height、0,0,则会覆盖导航栏。我希望它直接显示在导航栏的下方。所有可视的东西都在舞台上;从技术上讲,舞台包括导航栏。但是,更准确的说法可能是,stage包含应用程序,而应用程序包含导航栏。听起来您想要的是应用程序的大小,减去导航栏。您正在使用哪个应用程序组件?是的,这听起来正是我想要做的。我想将NativeMap嵌入到我的ViewNavigator应用程序中。最初我尝试了类似的方法,但它仍然占据了整个屏幕。因此,我查看了actionBar.height的输出,它返回了0…@jay在组件生命周期的什么时候检查该值?我的creationCompleteView@jay您正在查看视图上的操作栏吗?还是在顶级应用程序上?在这一点上,我将要求您提供一些特定的代码。好的,我修改了上面的问题,以包括从我视图的creationComplete调用的init事件中的代码。如果你有任何问题,请告诉我。谢谢