Как автоматически скрыть левый слайдер в портретной ориентации? - PullRequest
0 голосов
/ 11 июля 2011

В моем приложении у меня есть два ползунка (слева 30% / справа 70%);Я хочу скрыть свой левый ползунок в портретном режиме, когда пользователь поворачивает свой планшет.

Возможно ли это?если да то как?

enyo.kind({
    name: "dashboard",
    kind: enyo.VFlexBox,
    style: "background-color:#FFFFFF;",
    components: [

        {name: "header", kind: "Header", style: "background-color:#BDDEFF; height:57px;", layoutKind: "HFlexLayout", align: "start", components: [
            {kind: "ToolButtonGroup",style: "margin-right: 20px", components: [
                {icon: "images/menu-icon-refresh.png", className: "enyo-radiobutton-dark enyo-grouped-toolbutton-dark"},
                ]},

            {kind: "ToolButtonGroup", components: [

                {icon: "images/menu-icon-settings.png", className: "enyo-radiobutton-dark enyo-grouped-toolbutton-dark"},
                {icon: "images/menu-icon-edit.png", className: "enyo-radiobutton-dark enyo-grouped-toolbutton-dark"},
                {icon: "images/menu-icon-add.png", className: "enyo-radiobutton-dark enyo-grouped-toolbutton-dark", onclick: "addtask"},
            ]},

            {name: "vbutton", kind: "Button",style: "width:15%; margin-left: 20px; margin-top: 1px;", caption: "Hide Menu",onclick: "hidemenu"},

            {kind: "VFlexBox",style: "color:#5D5D5D; font-weight:bold;",  flex: 1, align: "center", components: [
                {content: "Business"},
                ]},
            //{content: "Business",className: "enyo-item-secondary" ,style: "color:#5D5D5D; font-weight:bold;"},

            {kind: "ToolButtonGroup", components: [
                {icon: "images/menu-icon-edit.png", className: "enyo-radiobutton-dark enyo-grouped-toolbutton-dark",onclick: "edittask"},
                {icon: "images/menu-icon-add.png", className: "enyo-radiobutton-dark enyo-grouped-toolbutton-dark",onclick: "addtasklist"},
                ]},

            {name: "title"},
            {name: "description", className: "enyo-item-secondary"}
        ]},
        {name: "slidingPane", kind: "SlidingPane", flex: 1, components: [

                    {name: "left", dismissible: true, onHide: "rightHide", onShow: "rightShow", onResize: "slidingResize", width: "250px", kind:"SlidingView", components: [

Menu/List
]},



            {name: "right",flex: 1, dismissible: false, onResize: "slidingResize",kind:"SlidingView", components: [

Menu related content

]},

],
});

1 Ответ

0 голосов
/ 28 июля 2011

Сначала добавьте это к своим компонентам:

{kind: "ApplicationEvents", onWindowRotated: "windowRotated"}

Когда окно поворачивается, вызывается следующая функция:

windowRotated: function(inSender) {
  if(enyo.getWindowOrientation() == "up"){
     this.$.left.setShowing(false);
  }
  else if(enyo.getWindowOrientation() == "left" OR enyo.getWindowOrientation() == "right"){
     this.$.left.setShowing(true);
  }

}
...