可拖动抽屉Adobe Flex Mobile

时间:2012-11-19 21:25:08

标签: flex drag-and-drop

有人可以帮助我创建一个位于移动应用程序底部的可拖动抽屉吗?我想要这样做,所以有一个随时可见的拖动句柄(可以是图像或其他),然后允许您将内容滑入视图并将它们滑回屏幕底部的视图之外。我需要一个方向开始,我应该能够在我拥有它之后弄明白。

1 个答案:

答案 0 :(得分:0)

我最初是在鼠标按下/移动/向上事件中启动了滑动,但是后来在停靠栏顶部的手柄图像上将其更改为点击效果(当您向上/向下滑动时也会发生)因为我今天下午改了它,所以我还没有机会清理它,但这是一个开始:

抽屉:

<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"  maxHeight="125" minHeight="30" height="30"
         xmlns:s="library://ns.adobe.com/flex/spark">

    <fx:Script>
        <![CDATA[
            private var dragging:Boolean = false;           

            protected function resize():void{
                var h:int = this.height;
                var i:int = 0;              
                if (h !== 125){
                    for(i=h;i<=125;i++){                        
                        this.height = i;
                    };
                    currentState='up';
                    return;
                }else{
                }

                if(h >= 30){
                    for(i=h;i>=30;i--){                     
                        this.height = i;                        
                    };
                    currentState='down';
                    return;
                }               
            }
        ]]>
    </fx:Script>

    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>  
    <s:states>
        <s:State name="down"/>
        <s:State name="up"/>
    </s:states>
    <s:Rect width="100%" height="100%" top="30">
        <s:fill>
            <s:SolidColor color="#333333"/>         
        </s:fill>
    </s:Rect>   
    <s:Image scaleMode="zoom" source.down="@Embed('Images/down.png')" source.up="@Embed('Images/up.png')" mouseDown="resize()"/>
    <s:HGroup width="100%" horizontalAlign="center" verticalAlign="bottom" top="30" gap="30">
        <!--Buttons here-->
    </s:HGroup> 
</s:Group>