Sencha Touch Нажав в любом месте на Просмотр изменений, активный элемент - PullRequest
0 голосов
/ 10 февраля 2012

Я в процессе черновой обработки приложения в 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 Ответ

1 голос
/ 10 февраля 2012

Это, вероятно, потому что у вас есть:

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

Также измените имя вашего приложения с app на другое, так как оно имеет конфликт имен с пробелом Android.

...