Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 防止在Appcelerator中触发TabGroup doubletap事件_Ios_Titanium_Appcelerator_Titanium Mobile_Appcelerator Mobile - Fatal编程技术网

Ios 防止在Appcelerator中触发TabGroup doubletap事件

Ios 防止在Appcelerator中触发TabGroup doubletap事件,ios,titanium,appcelerator,titanium-mobile,appcelerator-mobile,Ios,Titanium,Appcelerator,Titanium Mobile,Appcelerator Mobile,对于使用Appcelerator Titanium SDK 3.1.2开发的iPad应用程序,我有一个Ti.UI.Tab组,其中包含5个Ti.UI.Tabs。每个选项卡都包含一个根Ti.UI.Window,某些选项卡会在相关时打开其他窗口 双击选项卡组中的任何选项卡时,双击的选项卡将其内容重置为根窗口,自动关闭其中打开的窗口 我想禁止这种情况发生,但选项卡组或选项卡本身都没有允许我防止双击发生的属性。我以前遇到过类似的问题 最后,我编写了自己的选项卡栏来进行选项卡切换。因此,每当单击选项卡按钮时

对于使用Appcelerator Titanium SDK 3.1.2开发的iPad应用程序,我有一个Ti.UI.Tab组,其中包含5个Ti.UI.Tabs。每个选项卡都包含一个根Ti.UI.Window,某些选项卡会在相关时打开其他窗口

双击选项卡组中的任何选项卡时,双击的选项卡将其内容重置为根窗口,自动关闭其中打开的窗口


我想禁止这种情况发生,但选项卡组或选项卡本身都没有允许我防止双击发生的属性。

我以前遇到过类似的问题

最后,我编写了自己的选项卡栏来进行选项卡切换。因此,每当单击选项卡按钮时,我都可以获取选项卡事件并进行检查


希望有帮助。

使用视图创建自己的TabGroup控件的另一种方法是在选项卡内添加NavigationGroup控件,以防止双击选项卡时重置窗口

在选项卡组的选项卡控件中,创建一个空窗口控件,并像通常那样将其链接到选项卡。然后,创建NavigationGroup控件并将其添加到选项卡的根窗口:

//Set up your Tab Group with a Tab and a Root Window for the Tab
var tabGroup = Ti.UI.createTabGroup();

var tabWin = Ti.UI.createWindow({
    navBarHidden:true
});

var tab = Ti.UI.createTab({
    window:tabWin
});
tabGroup.addTab(tab);

//Create a Root Window Control for the Navigation Group
var navWin = Ti.UI.createWindow({
    title:'NavGroup Root Window'
}); 

//Create a NavigationGroup Control and add it to the Root Window
var nav = Ti.UI.iPhone.createNavigationGroup({
    window: navWin
});
tabWin.add(nav);

//Launch Tab Group
tabGroup.open();
当您在此选项卡内打开窗口时,请使用NavigationGroup.open(窗口),而不是使用tab.open(窗口)方法。让NavigationGroup管理窗口堆栈而不是选项卡:

//Open a new Window inside the Navigation Group
var win1 = Ti.UI.createWindow();
nav.open(win1);

//Close this Window you opened
nav.close(win1);

通过这样做,可以防止用户在双击包含NavigationGroup对象的相关选项卡时重置窗口堆栈。

这决不是问题的解决方案,因为用户可能希望使用Appcelerator/XCode提供的UI控件,但这似乎是目前唯一的解决办法。我也是这样做的——效果很好!请注意,Ti.UI.iPhone.NavigationGroup已被弃用。但这也适用于导航窗口。