Sencha Touch单击View上的任意位置可更改活动项目

时间:2012-02-09 21:08:12

标签: xcode4 ios5 cordova sencha-touch

我正在使用Sencha Touch粗略地处理应用程序。在我添加用于登录和加载外部数据的实际逻辑之前,我正在验证卡之间的移动是否正确。

我的问题是,无论哪个视图处于活动状态,点击/点按视图上的任意位置都会将活动项目更改为app.views.buildingList。

我正在使用Sencha Touch 1.1,Phonegap 1.3.0和XCode 4(iOS 5 SDK)。

赞赏任何线索!

Viewport.js

app.views.Viewport = Ext.extend(Ext.Panel, {
fullscreen: true,
layout: 'card',
cardSwitchAnimation: 'slide',
initComponent: function() {
Ext.apply(app.views, {
          login: new app.views.Login(),
          plantDetail: new app.views.PlantDetail(),
          buildingList: new app.views.BuildingList()
          });
Ext.apply(this, {
          items: [
                  app.views.login,
                  app.views.plantDetail,
                  app.views.buildingList
                  ]
          });
app.views.Viewport.superclass.initComponent.apply(this, arguments);
    }
});

Login.js

app.views.Login = Ext.extend(Ext.Panel, {
fullscreen: true,

dockedItems: [
    {
        dock : 'top',
        xtype: 'panel',
        height: 70,
        html: '<img src="images/logo.jpg"/>'
    },
    {
        xtype: 'textfield',
        name : 'user',
        placeHolder: 'Username',
        cls: 'loginBox',
    },
    {
        xtype: 'passwordfield',
        name : 'password',
        placeHolder: 'Password',
        cls: 'loginBox'         
    },
    {
        xtype: 'button',
        text : 'Login',
        cls: 'standardButton',
        listeners: {
            'tap': function () {
                Ext.dispatch({
                    controller: app.controllers.viewController,
                    action: 'index',
                    animation: {type:'slide', direction:'left'}
                });
            }
        }
    },
    {
        xtype: 'spacer',
        html: '<div style="text-align: center; font-size: 14px; padding: 10px; margin-top: 10px;">Forgot Password?</div>' 
    },
    {
        xtype: 'button',
        cls: 'standardButton',
        text : 'Retrieve Password'
    },
    ]

});

1 个答案:

答案 0 :(得分:1)

这可能是因为你有:

app.views.Login = Ext.extend(Ext.Panel, {
fullscreen: true, //Only your viewport should be fullscreen

同时将您的应用名称从app更改为其他名称,因为它与android phonegap存在命名冲突。