as3组件,如iOS';UIScrollView

as3组件,如iOS';UIScrollView,ios,actionscript-3,air,uiscrollview,Ios,Actionscript 3,Air,Uiscrollview,我正在搜索一个类似于iOS上UIScrollView的as3类;也就是说,你可以拖动视图上的任何位置(电影剪辑),它会滚动其中的内容。我找到了这个类,但它只是在右边有一个条,在那里你必须拖动条或按下上下箭头。我想要一个直观的类,你可以滑动任何地方滚动视图。外面有类似的东西吗?我很惊讶我没能通过搜索找到什么 作为记录,我看到了,但它被接受的答案链接到了一个拙劣的UITableView实现,而不是UIScrollView 这对我来说很有效,没有评论,但相当简单。 所有的.fla(不包括)都有一个名为

我正在搜索一个类似于iOS上UIScrollView的as3类;也就是说,你可以拖动视图上的任何位置(电影剪辑),它会滚动其中的内容。我找到了这个类,但它只是在右边有一个条,在那里你必须拖动条或按下上下箭头。我想要一个直观的类,你可以滑动任何地方滚动视图。外面有类似的东西吗?我很惊讶我没能通过搜索找到什么


作为记录,我看到了,但它被接受的答案链接到了一个拙劣的UITableView实现,而不是UIScrollView

这对我来说很有效,没有评论,但相当简单。 所有的.fla(不包括)都有一个名为scroll_容器的MC,它包含所有的项目

    private var hasScrolled:Boolean = false;
    private var checkForScroll:Boolean = false;
    private var oldMouse:Point;

    public function IOSScrollTest() {

        addEventListener( MouseEvent.MOUSE_DOWN, MouseDown );
        addEventListener( MouseEvent.MOUSE_UP, MouseUp );
        addEventListener( Event.ENTER_FRAME, EnterFrame );
    }

    private function MouseDown( e:MouseEvent ) {

        hasScrolled = false;
        checkForScroll = true;
        oldMouse = new Point( mouseX, mouseY );
    }

    private function MouseUp( e:MouseEvent ) {

        if( ! hasScrolled ) {

            // Do your stuff here (onClick things)
        }

        checkForScroll = false;
    }

    private function EnterFrame( e:Event ) {

        if( checkForScroll ) {

            var diff:Number = mouseY - oldMouse.y;
            if( Math.abs(diff) > 2 ) {

                hasScrolled = true;
                oldMouse = new Point( mouseX, mouseY );
                scroll_container.y += diff;
            }
        }
    }

这正是你想要的:

你说得对,没有什么好的。最后我写了我自己的,但它太大了,不能在这里作为答案。也许当我有时间的时候,我会把它打包并提供给社区