我对煎茶触摸很陌生。目标是创建一个包含四个选项卡的 TabPanel 的应用程序,其中一个应该是地图(其他是 NestedList 和两个面板,就像一个魅力一样工作)。我试着让地图卡像
NPApp.views.Mapcard = Ext.extend(Ext.Map, { ...
我最终得到了非常奇怪的结果,比如一些视图重叠并且没有显示地图。
第二次尝试是创建一个面板,将其嵌入到 TabPanel 并将地图添加到面板,我得到这个错误:
未捕获的类型错误:无法读取未定义的属性“ROADMAP”;sencha-touch-debug.js:24840
我已经尝试将 mapType 更改为 google.map.MapTypeID ,就像 Google Map API V3 中提到的那样,但没有成功。
实在是看不懂了,希望大家多指教!
应用程序:
NPApp = new Ext.Application({
name: "NPApp",
title: "NextPuff",
icon: 'images/icon.png',
tabletStartupScreen: 'images/index_default.jpg',
phoneStartupScreen: 'images/index_default.jpg',
launch: function() {
this.views.viewport = new this.views.Viewport();
this.views.homecard = this.views.viewport.getComponent('navi');
}
});
视口:
NPApp.views.Viewport = Ext.extend(Ext.TabPanel, {
fullscreen: true,
store: NPApp.npstore,
initComponent: function() {
Ext.apply(this, {
tabBar: {
dock: 'bottom',
layout: {
pack: 'center'
}
},
items: [
{ xtype: 'homecard', stretch: true},
{ xtype: 'searchcard', id: 'navi' },
{ xtype: 'mapcard' },
{ xtype: 'morecard' }
]
});
NPApp.views.Viewport.superclass.initComponent.apply(this, arguments);
}
});
地图卡:
NPApp.views.Mapcard = Ext.extend(Ext.Panel, {
title: "Map",
iconCls: "map",
initComponent: function() {
var npMap = new Ext.Map({
title: 'Map',
useCurrentLocation: true,
listeners: {
centerchange : function(comp, map){
// refreshMap(map);
}
},
mapOptions : {
mapTypeControl : false,
navigationControl : false,
streetViewControl : false,
backgroundColor: 'transparent',
disableDoubleClickZoom: true,
zoom: 17,
draggable: false,
keyboardShortcuts: false,
scrollwheel: false
}
});
Ext.apply(this, {
defaults: {
styleHtmlContent: true
},
items: [npMap]
});
NPApp.views.Homecard.superclass.initComponent.apply(this, arguments);
}
});
Ext.reg('mapcard', NPApp.views.Mapcard);
煎茶 1.1.0;谷歌 JavaScript 地图 API V3;野生动物园 5.1