イオンタブが動いています。私の地図は、別のタブをクリックしてから地図に戻るまで、正常に機能します。マップタブに戻ると、地図のほとんどが左上隅に表示されたまま、ほとんどの地図がグレー表示されます。私が地図の可視部分をつかんで中心のビューにドラッグすると、可視の地図は画面の約2/3ですが、目に見える部分を左上の隅に戻すようにすると、今すぐ以前にグレーアウトされたセクションは白い白です。Cordova Admobがイオンマップの「灰色」の描画を引き起こします。
さらに、デバイスをポートレートからランドスケープに単に回転させると、マップが完全に正しく再描画されます。そして、景色からポートレートモードに戻って、フルマップが再び表示されます。
私の人生のために、私は起こってから 'グレー'を得ることができません。私apps.jsで
:
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
globalGPS() ;
});
})
.config(function($stateProvider,$urlRouterProvider) {
'$compileProvider',
function($compileProvider)
{
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?||tel):/);
// Angular before v1.2 uses $compileProvider.urlSanitizationWhitelist(...)
}
$stateProvider
// setup an abstract state for the tabs directive
.state('tab', {
url: "/tab",
abstract: true,
templateUrl: "templates/tabs.html",
controller: 'TabsCtrl'
})
// Each tab has its own nav history stack:
.state('tab.map', {
url: '/map',
views: {
'tab-map': {
templateUrl: 'templates/tab-map.html',
controller: 'MapCtrl'
}
}
})
GPS機能が標準のJavaScriptファイルからロードされた状態/コントローラの外部で行われ、かつ同一の外部関数がグローバルとしてのマップを設定し、すべてのGPS VAR:私のコントローラで
setMap = new google.maps.Map(document.getElementById("mapBody"), myOptions);
が定義されています
.controller('MapCtrl', function($scope,$rootScope,constants) {
// runs this code on EVERY return to map tab
$scope.$on('$ionicView.beforeEnter', function(){
if (setMap) {
google.maps.event.addListener(setMap, "idle", function(){
google.maps.event.trigger(setMap, "resize");
}) ;
// $scope.refreshMap() ; // see note below
}
});
$scope.refreshMap = function() {
setTimeout(function() {
$scope.refreshMap_();
}, 1);
};
$scope.refreshMap_ = function() {
var div = document.getElementById("mapBody");
reattachMap(setMap,div);
};
reattachMap( )外部関数である:(てsetMap、)「サイズを変更」google.maps.event.triggerの代わりに
function reattachMap(map,div) {
if (!isDom(div)) {
return map;
} else {
map.set("div", div);
while(div.parentNode) {
div.style.backgroundColor = 'rgba(0,0,0,0)';
div = div.parentNode;
}
return map;
}
}
、私はそれがDOMから削除されていた思考地図のdivを再び取り付ける使用してみました。どちらの方法でもうまく動作しません。
<div id="mapWrapper" style="position:absolute;width:100%;height:100%">
<div id="mapBody" data-tap-disabled="false"></div>
</div>
</div>
と
#mapBody {
border:2px solid #4e8cf9;
text-align:center;
height:700px;
width:400px;*/
flex: 1;
}
:私はいくつかの皆さんの問題を修正している読んでいたとして、私もハード幅/ heigh CSSの値を設定するマップを保持し、私のdivのでは(幅/高さの割合のに対し、問題を引き起こしていました)
あなたは 'NPM Iコルドバ - admob'を使用している場合は、' admob.showBannerAd(偽、成功、失敗)を呼び出すことができます; '、https://github.com/appfeel/admob-google-cordova/を参照してくださいwiki/showBannerAdでは、広告は削除されませんが、広告は表示されず、広告を含むビューに戻る際に広告が表示される – Miquel