[]tab 是否可以做到左右滑动切换view呢?

tab 是否可以做到切换view呢,也就是控制不同的view,这些view都是不同的ui,并且通过左划或右划实现切换,类似皇家战争的tab模式
已邀请:

cuixueying

赞同来自:

@rhizx
  目前官方的tab接口可以直接实现点击tab标签进行view切换,左右滑动实现view切换官方未实现,不过你可以通过逻辑控制自己封装接口来完成,通过MOUSE_MOVE事件,左右滑动的同时更改tab的selectedIndex值以及view显示即可实现。

asdf131

赞同来自:

{
this.on(laya.events.Event.MOUSE_DOWN ,this, this.onMouseDown);
        this.on(laya.events.Event.MOUSE_UP ,this, this.onMouseUp);
        
    }
    private onMouseDownX : number;
    private onMouseDownY : number;
    private isMove : boolean ;
    onMouseDown(e : laya.events.Event):void{
        console.log("MOUSE_DOWN");
        this.on(laya.events.Event.MOUSE_MOVE ,this, this.onMouseMove);
        this.onMouseDownX = e.target.mouseX;
        this.onMouseDownY = e.target.mouseY;
    }
    onMouseUp(e : laya.events.Event):void{
        console.log("MOUSE_UP");
        this.off(laya.events.Event.MOUSE_MOVE ,this, this.onMouseMove);
        if(this.isMove)
        {
            let moveLen = this.onMouseDownX - e.target.mouseX;
             let offsetY = Math.abs(this.onMouseDownY - e.target.mouseY);
            if(offsetY < 10)//是否滑动的条件
            {
                if( moveLen >10)
                {
                    console.log("Move  right!");
                }else if (moveLen < -10)
                {
                    console.log("Move  Left!");
                }
            }
        }

        this.isMove = false;
    }
    onMouseMove():void{
        this.isMove = true ;
    }

要回复问题请先

商务合作
商务合作