我看到原版控件插件在版本1.6之前的cordova / phonegao上工作正常。但是我不能再使用这段代码了解它:
newLoc = location.href.substring(0, location.href.lastIndexOf("/") + 1);
// Initializating TabBar
nativeControls = window.plugins.nativeControls;
nativeControls.createTabBar();
// Back Button
nativeControls.createTabBarItem("page1", "Page 1", "www/images/pound.png", {
"onSelect": function() {
$.mobile.changePage("#page1", {
transition: 'reverse slide'
});
nativeControls.setNavBarTitle("Page 1");
nativeControls.selectTabBarItem("page1");
selectedTabBarItem = "page1";
}
});
// Home tab
nativeControls.createTabBarItem("page2", "Page 2", "www/images/pound.png", {
"onSelect": function() {
if (selectedTabBarItem == "page1") {
$.mobile.changePage("#page2", {
transition: 'slide'
});
} else {
$.mobile.changePage("#page2", {
transition: 'reverse slide'
});
}
nativeControls.setNavBarTitle("Page 2");
nativeControls.selectTabBarItem("page2");
selectedTabBarItem = "page2";
}
});
// About tab
nativeControls.createTabBarItem("page3", "Page 3", "www/images/question.png", {
"onSelect": function() {
$.mobile.changePage("#page3", {
transition: 'slide'
});
nativeControls.setNavBarTitle("Page 3");
nativeControls.selectTabBarItem("page3");
selectedTabBarItem = "page3";
}
});
// Compile the TabBar
nativeControls.showTabBar();
nativeControls.showTabBarItems("page1", "page2", "page3");
selectedTabBarItem = "page1";
nativeControls.selectTabBarItem("page1");
// Setup NavBar
nativeControls.createNavBar();
nativeControls.setNavBarTitle("Page 1");
nativeControls.setupLeftNavButton("?", "", "onLeftNavButton");
//nativeControls.hideLeftNavButton();
nativeControls.setupRightNavButton("About", "", "onRightNavButton");
nativeControls.showNavBar();
}
查看js文件,似乎现在需要cordova.exec();
有人搞定了吗? 插件iOS和iPhone有什么区别?
答案 0 :(得分:2)
错误的原因是Cordova不再支持window.plugins
。
解决方案:
修改您的调用脚本,如下所示(可能在您的onDeviceReady()
函数中 - 如果您使用的话,这可能在controls.js
文件中:
// nativeControls = window.plugins.nativeControls; // get rid of (or comment out)
nativeControls = new NativeControls(); // use this line instead
修复并使用Cordova 2.0: - )
希望有所帮助
附录:实际上这只会让你分道扬 - - 你仍然需要编辑xCode文件NativeControls.m
。
答案 1 :(得分:0)
以下是关于此的GitHub项目: https://github.com/zSprawl/NativeControls
只需下载项目并在xcode 4.x中打开它 希望这有帮助!