Как установить случайную анимацию при смене панели вкладок в sencha touch 2?

Я все еще новичок в sencha touch 2, и в настоящее время я застрял в том, как установить разные анимации для каждого

время, когда пользователь переключается между панелями вкладок. Может ли кто-нибудь дать мне несколько советов, как это сделать?

Заранее большое спасибо.


person Eli    schedule 03.06.2012    source источник


Ответы (1)


Вот большая подсказка:

Ext.define("App.view.Main", {
  extend: 'Ext.tab.Panel',

  config: {
    fullscreen: true,
    layout: {
      animation: 'slide'
    },
    tabBarPosition: 'bottom',
    items:[{
      xtype:'panel',
      iconCls: 'home',
      title:'Tab 1',
      html:'Tab1'
    },{
      xtype:'panel',
      iconCls: 'user',
      title:'Tab 2',
      html:'Tab2'
    },{
      xtype:'panel',
      iconCls: 'info',
      title:'Tab 3',
      html:'Tab3'
    }],
    listeners:{
      activeitemchange:function(){
        this.getLayout().setAnimation(['slide','fade','cover','reveal','pop', 'flip'][Math.floor(Math.random()*6)]);
      }
    }
  }
});

По сути, когда пользователи меняют карты, устанавливается новая случайная анимация для макета панели вкладок среди тех, что в ['slide','fade','cover','reveal','pop', 'flip'];

Не стесняйтесь вносить свой вклад, добавляя обработку параметра направления

[ОБНОВЛЕНИЕ] направление обработки

listeners:{
  activeitemchange:function(){
    var anim_with_direction = ['slide','cover','reveal'],
        anim_without_direciton = ['fade','pop', 'flip'],
        anims = anim_with_direction.concat(anim_without_direciton),
        anim,
        type = anims[0],
        direction;
    if(anim_with_direction.indexOf(type) != -1){
      direction = ['left','right','up','down'][Math.floor(Math.random()*4)];
      anim = {type:type,direction:direction};
    }else{ 
      anim = {type:type};
    }
    this.getLayout().setAnimation(anim);
  }
}
person Titouan de Bailleul    schedule 03.06.2012
comment
Рад, что это помогло. Не забудьте принять ответ, нажав на зеленую галочку;) - person Titouan de Bailleul; 03.06.2012
comment
очень жаль, но могу ли я спросить вас, как установить направление в сенче. Я использую setDirection, но это не сработало - person Eli; 03.06.2012
comment
Тогда это будет больше, чем намек, но обязательно. Дайте мне 10 минут, и я обновлю ответ. - person Titouan de Bailleul; 03.06.2012
comment
Думаю, в следующий раз я поменяю «подсказку» на «решение», лол. Большое спасибо: Д - person Eli; 03.06.2012