直接贴代码吧
Ext.define("build.controller.MainController",{ extend:"Ext.app.Controller", config:{ refs:{ mainDataview:"main dataview", createAdd:"createAdd" }, control:{ "mainDataview":{ itemtap:function(data,index,item,record,event){ //测试三种展示View的方法................ console.log(record) switch (record.data.id){ case "1": console.log(1111) /*第一种方式*/ var c1=Ext.create("build.view.CreateAdd"); Ext.Viewport.add(c1); Ext.Viewport.setActiveItem(c1); break; case "2": console.log(2222) /*第二种方式,这种方式和case3这种show的方式其实是一样de,但是这个先将对象拿出,是为了方便给这个对象设置属性,比如说*/ var c2=this.getCreateAdd(); if(c2==null){ c2=Ext.create("build.view.CreateAdd") } Ext.Viewport.animateActiveItem(c2,{type:"slide",direction:'left'})
//c2.setXXXXX() break; case "3": console.log(3333) /*第三种方式*/ Ext.Viewport.animateActiveItem("createAdd",{type:"slide",direction:'right'}) break; } Ext.getCmp("detailView").setTitle(record.data.name) } } } } })