【问题标题】:Setting up Touch Events on Materials in Papervision在 Papervision 中为材质设置触摸事件
【发布时间】:2014-05-06 00:49:41
【问题描述】:

我正在使用 papervision 并希望在 Cube 的每一侧设置一个 TouchEvent。我该怎么办?现在我正在设置我传递给 MovieMaterial 类的电影剪辑上的事件。 MouseEvent 工作正常,但 TouchEvent 似乎没有触发。

     public function MiniCube(k:int, j:int, i:int)
    {
        var matList:Object = {all:new ColorMaterial(0xff0000,1,true)};
        matList.back = createColorMC(0x000000,'back');
        matList.front = createColorMC(0x000000,'front');
        matList.top = createColorMC(0x000000,'top');
        matList.bottom = createColorMC(0x000000,'bottom');
        matList.right = createColorMC(0x000000,'right');
        matList.left = createColorMC(0x000000,'left');

        cube = new Cube(new MaterialsList(matList),10,10,10);


    }


    private function createColorMC(color:uint, name:String):MovieMaterial
    {

        var ClassReference:Class = getDefinitionByName(iconArr[Math.floor(Math.random() * iconArr.length)]) as Class;
        var mc=new ClassReference();
        mc.name = name;

         //MOUSE EVENT WORKS
        mc.addEventListener(MouseEvent.MOUSE_DOWN, onMovieMatClicked);

        //TOUCH EVENT DOESNT
        mc.addEventListener(TouchEvent.TOUCH_BEGIN, onMovieMatClicked);

        var movieMat:MovieMaterial = new MovieMaterial(mc,true,true);
        movieMat.interactive = true;
        movieMat.smooth = true;
        movieMat.animated = true;
        return movieMat;
    }

【问题讨论】:

    标签: actionscript touch papervision3d


    【解决方案1】:

    您是否在您的应用程序上启用了多点触控?以下行进入您的主应用程序类的构造函数:

            Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
    

            Multitouch.inputMode = MultitouchInputMode.GESTURE;
    

    【讨论】:

    • 感谢您的回复。我添加了 Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;和 toucevents 为舞台工作。 papervision 甚至支持触摸事件吗?
    猜你喜欢
    • 2013-09-28
    • 1970-01-01
    • 1970-01-01
    • 2016-09-23
    • 2017-11-15
    • 2019-03-25
    • 2015-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多