原生标签栏的iphone在phonegap

native Tab bar of iphone in phonegap

本文关键字:phonegap iphone 标签栏 原生      更新时间:2023-09-26

我想使用iphone的本地标签栏使用phonegap。我使用的代码和插件显示在http://wiki.phonegap.com/w/page/16494801/iPhone:-UIControls-%28TabBar%29。但是标签栏没有显示。谁能帮助我得到标签栏在我的应用程序?

这很容易。通常情况下,这不会发生,因为您正在添加第四个参数。

选项栏正在等待第四个参数或null。但是测试这个是否存在是有问题的。

那么就输入dummy item -> {(foo: "bar")} <——

plugins.tabBar.createItem("Advent Calendar", 
                          "Sven Elch", 
                          "abc.png", 
                          { foo : "bar" }  // <-----
);

或tab栏中的patch if条件。M(第334行左右)。

if(options != [NSNull null])
{
    id badgeOpt = [options objectForKey:@"badge"];
    if(badgeOpt && badgeOpt != [NSNull null])
        item.badgeValue = [badgeOpt stringValue];
}

试试这个:

<script>
    var moreNum = 1;
    plugins.nativeControls.createToolBar();
    plugins.nativeControls.setToolBarTitle("hello");
    plugins.nativeControls.createTabBar();  
    plugins.nativeControls.createTabBarItem("search","search","tabButton:Search");
    plugins.nativeControls.createTabBarItem("book","book","tabButton:Contacts");
    plugins.nativeControls.createTabBarItem("more","more","tabButton:More",{"onSelect":function(){
                                            plugins.nativeControls.updateTabBarItem("more",{"badge":((++moreNum).toString())});
                                            }});
    plugins.nativeControls.showTabBar();
    plugins.nativeControls.showTabBarItems("book","search","more");
</script>

我相信这个插件已经被弃用了。请登录http://github.com/phonegap/phonegap-plugins/。你会在iPhone下看到一个叫做native control的插件。这就是你想要使用的插件。

下载后,将本机控件文件添加到项目中的插件文件夹中。在phonegap中添加NativeControls作为键和值。plist文件。将nativecontrols js文件添加到www目录中。然后你可以创建,显示,等等你的标签栏

步骤(可能对任何插件都一样):

  • 获取iOS NativeControls插件
  • 复制*。xib, *。*. m和*.h文件到项目的"Plugins"文件夹(应该已经存在并包含一个README文件)
  • 它们也必须被添加到项目中,所以将它们从"Plugins"文件夹(在Finder中)拖到相同的文件夹(在Xcode中),并选择创建引用
  • 打开"资源/科尔多瓦。plist"answers"插件"下,添加一个键与插件名称"NativeControls"和字符串值"NativeControls"(我猜这是插件的主类名)
  • 试试下面的例子(注:这个例子是从2012-06-28,我实际上正在开发一个改进版本,删除了工具栏功能,代之以一个实际工作的导航栏-见这里)

    window.plugins.nativeControls.createTabBar()
    window.plugins.nativeControls.createTabBarItem('home', 'Home', 'tabButton:Contacts')
    window.plugins.nativeControls.showTabBar()
    window.plugins.nativeControls.showTabBarItems('home')
    window.plugins.nativeControls.createToolBar()
    window.plugins.nativeControls.setToolBarTitle('Hello toolbar!')
    window.plugins.nativeControls.showToolBar()
    alert("Tabs and toolbar should now become visible")
    

我不能让工具栏的标题工作,虽然,但选项卡和工具栏本身(没有文本)显示。