XCode バージョン 4.2 と PhoneGap バージョン 1.5.0 を使用して iOS アプリを開発しています。次のコードを使用して、ページにタブ バーを追加できましたが、選択時に別のページに移動できませんでした。PhoneGap の NativeControls プラグインを使用してタブ バーを作成しました。
function onDeviceReady()
{
Cordova.exec("NativeControls.createTabBar"
var options = "bottom";
window.onorientationchange = function() {
var orientation = window.orientation;
switch(orientation) {
case 0:
Cordova.exec("NativeControls.showTabBar", options);
/* Add a descriptive message on "Handling iPhone or iPod touch Orientation Events" */
document.getElementById("currentOrientation").innerHTML="Now in portrait orientation (Home button on the bottom).";
break;
case 90:
Cordova.exec("NativeControls.showTabBar", options);
document.getElementById("currentOrientation").innerHTML="Now in landscape orientation and turned to the left (Home button to the right).";
break;
case -90:
Cordova.exec("NativeControls.showTabBar", options);
document.getElementById("currentOrientation").innerHTML="Now in landscape orientation and turned to the right (Home button to the left).";
break;
default:
Cordova.exec("NativeControls.showTabBar", options);
document.getElementById("currentOrientation").innerHTML="Now the orientation must be -180. default: case: ";
break;
}//end switch
}//end window.orientationchange
Cordova.exec("NativeControls.showTabBar", options);
Cordova.exec("NativeControls.createTabBarItem", "Wineries", "Wineries", null, "1", options);
Cordova.exec("NativeControls.createTabBarItem", "Wines", "Wines", "www/Wine.png", "2", {onSelect: function() {location.href = "Review.html" }});
Cordova.exec("NativeControls.createTabBarItem", "Tours", "Tours", null, "3", options);
Cordova.exec("NativeControls.createTabBarItem", "Non-Mobile", "Non-Mobile", null, "4", options);
Cordova.exec("NativeControls.showTabBarItems", "Wineries", "Wines", "Tours", "Non-Mobile");
Cordova.exec("NativeControls.selectTabBarItem", "Wineries");
}
しかし、このコードは、選択時にページを変更するためにまったく機能していません。
Cordova.exec("NativeControls.createTabBarItem", "Wines", "Wines", "www/Wine.png", "2", {onSelect: function() {location.href = "Review.html" }});
編集次のコードを使用すると同じことが起こります。2 ページ目に同じコードを繰り返す必要がありますか? もしそうなら、どのメソッドでこれを呼び出す必要がありますか?
function onDeviceReady()
{
var nc = window.plugins.nativeControls;
nc.createTabBar();
nc.createTabBarItem("Wineries", "Wineries", "www/grape.png", {onSelect: function() {location.href = "index.html" }});
nc.createTabBarItem("Wines", "Wines", "www/Wine.png", {onSelect: function() {location.href = "Review.html" }});
nc.createTabBarItem("Tours", "Tours", "www/tour.png", null);
nc.createTabBarItem("Non-Mobile", "Non-Mobile", "", null);
nc.showTabBar();
nc.showTabBarItems("Wineries", "Wines", "Tours", "Non-Mobile");
nc.selectTabBarItem("Wineries");
}