我制作简单的钛移动应用程序。首先,当我按下某个按钮时,我想打开新窗口。当我使用模态窗口时,它可以显示标题栏,所以我可以在那里放回按钮,如下所示:
这是我的代码:
var MainMenu = require('ui/common/option2/MainMenu');
var mainMenuWindow = Titanium.UI.createWindow({
title:'Main Menu',
backgroundColor:'white',
modal:true,
navBarHidden:Ti.Platform.osname ==='android' ? true : false
});
var mainMenu = new MainMenu(mainMenuWindow);
mainMenuWindow.add(mainMenu);
mainMenuWindow.open();
但如果我清除modal:true
标题栏未显示如下:
有没有人知道如何在没有模态的情况下打开新窗口时显示/添加标题栏?我已经尝试使用工具栏,但它真的很麻烦,因为我应该定义字体大小,甚至按钮的位置:(任何建议吗?非常感谢..
答案 0 :(得分:4)
实际上在没有使用模态的情况下显示标题栏存在问题,所以这是调整。
您必须添加一个标签组并将窗口添加到其选项卡,并将“tabBarHidden”设置为该窗口的true。
运行应用程序时,您会看到标题栏。
这是它的示例代码
var tabGroup = Ti.UI.createTabGroup();
var win = Ti.UI.createWindow({
backgroundColor:'#fff',
tabBarHidden:true
});
var tab = Ti.UI.createTab({
window: win,
title: 'my win'
});
tabGroup.addTab(tab);
tabGroup.open();
上述解决方案适用于iOS。
对于Android,这里有诀窍:
将这些行添加到<app-project-dir>/platform/android/res/layout/titanium_tabgroup.xml
文件中。
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp">
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="0dp"
android:layout_weight="1"/>
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="0"/>
</LinearLayout>
</TabHost>
答案 1 :(得分:-2)
您已将navBarHidden
设为true。试试这个:
var mainMenuWindow = Titanium.UI.createWindow({
title:'Main Menu',
backgroundColor:'white',
modal:true,
navBarHidden: false // always show nav bar
});