0

Sencha Touch アプリケーションでマップを使用したいと考えていました。スクリプトを index.html にロードすると、ブラウザが実際の場所を探しているため、スクリプトがアクティブになっていることがわかります。

問題は、ビューのすべてが読み込まれることですが、マップが表示されません。

私の見解は次のようになります。

Ext.define('RMA-App.view.ActivityMap', {
    extend: 'Ext.form.Panel',
    alias: 'widget.activitymap',

    initialize: function() {
        this.callParent(arguments);

        var backButton = {
            xtype: 'button',
            ui: 'back',
            text: 'Zurück',
            handler: this.onBackButtonTap,
            scope: this
        };

        var topToolbar = {
            xtype: 'toolbar',
            docked: 'top',
            title: 'Ort der Aktivität',
            items: [
                backButton,
                {
                    xtype: 'spacer'
                }
            ]
        };

        var map = {
            xtype: 'map',
            useCurrentLocation: true
        };

        this.add([
            topToolbar,
            map
        ]);
    },

    onBackButtonTap: function() {
        console.log('backToActivityEditorCommand');
        this.fireEvent('backToActivityEditorCommand', this);
    }
});
4

1 に答える 1

0

親コンテナにレイアウトを与えてみてください。私の経験では、ビューのデフォルト レイアウトはマップを子として適切にレンダリングしません。

Ext.define('RMA-App.view.ActivityMap', {
    extend: 'Ext.form.Panel',
    alias: 'widget.activitymap',
    config: {
        layout: {
            type: 'fit'
        }
    },  

    ...

余談ですが、Ext.map は Ext.container を継承しているため、ツールバーを追加するだけの場合は、ツールバーをマップ コンテナー自体に追加して、ネストのレベルを削除できます。

于 2013-08-06T20:27:43.333 に答える