就像在HTML / CSS中一样,您可以使用css将div的位置设置为“固定”。例如,当用户向下滚动网页时,标题会固定在网页顶部。
这在Flex中是否可行?
我看过
VDividedBox
控制我正在做什么但不喜欢'divider'。
非常感谢任何想法。
答案 0 :(得分:1)
好的,这就是我使用
创建固定顶部组件和滚动底部组件的方法VDividedBox
将VDividedBox中第二个Box的height
设置为“1”是关键。只要有一些高度值,它就会按我想要的方式工作。 VDividedBox的另一个属性是verticalGap
,我设置为3以使分割器显示而没有可拖动的图像。
这是代码。
<mx:VDividedBox id="vDividedBox" verticalGap="3" width="100%" height="100%">
<mx:VBox id="vBox1" width="100%" backgroundColor="haloGreen">
<mx:Button label="button"></mx:Button>
</mx:VBox>
<mx:VBox id="hBox2" width="100%" backgroundColor="haloBlue" height="1">
<mx:Box height="3000" backgroundColor="blue" width="100%" horizontalAlign="center">
<mx:Label text="scrollable content" color="white" fontSize="20"/>
</mx:Box>
</mx:VBox>
</mx:VDividedBox>
答案 1 :(得分:0)
我没有在Flex中看到任何具有真正CSS样式fixed
定位的盒子容器。一些Flex元素可以使用绝对定位(Canvas,Application或Panel with layout="absolute"
),然后您可以将VDividedBox放在绝对定位工具栏下面的图层上,这可能会产生固定工具栏的错觉。
您可能需要查看Javascript外部接口api,以创建一个位于Flex外部的工具栏,并使用它来控制您的某些Flex UI。您可以使用Javascript向HTML和Flex传递坐标,告诉HTML工具栏将自己放在Flex SWF上的位置。