0

我正在钛 appcelerator 中开发 android 应用程序。现在我的问题是我必须在我的应用程序中添加操作栏并在它的左侧和右侧放置两个按钮

但我无法成功实现操作栏

我已经完成了以下操作以制作显示操作栏,但它只是使 ma 应用程序崩溃,

    var win = Ti.UI.createWindow({
        title: _args.title,
        backgroundColor:'black',
        navBarHidden: false,
        containingTab: _args.containingTab,
        //tabGroup: _args.tabGroup,
        barImage:rootPath+'/Components/top_bg.jpg'
    });


var actionBar;
win.addEventListener("open", function() {
    if (Ti.Platform.osname === "android") {
        if (! win.activity) {
            Ti.API.error("Can't access action bar on a lightweight window.");
            alert("NOT ACTIVITY");
        } else {
            actionBar = win.activity.actionBar;
            if (actionBar) {
                alert("ACTIVITY");
                actionBar.backgroundImage = "/images/bg_top.png";
                actionBar.title = "New Title";
                actionBar.onHomeIconItemSelected = function() {
                    Ti.API.info("Home icon clicked!");
                };
            }
        }
    }
});

谁能指导我在哪里做错了?或者还有什么我必须遵循的。

4

2 回答 2

4

试着把它包起来onCreateOptionsMenu

   win.activity.onCreateOptionsMenu = function(e) {
        actionBar = win.activity.actionBar;
        if (actionBar) {
            alert("ACTIVITY");
            actionBar.backgroundImage = "/images/bg_top.png";
            actionBar.title = "New Title";
            actionBar.onHomeIconItemSelected = function() {
                Ti.API.info("Home icon clicked!");
            };
        } else {
            alert('missing action bar');
        }
     });
于 2013-07-04T01:42:26.380 回答
1

我遇到了同样的问题,花了一些时间找出我必须在 tiapp.xml 中放入哪些代码

<uses-sdk android:maxSdkVersion="18" 
            android:minSdkVersion="11" android:targetSdkVersion="18"/>

把它放在清单元素中,它应该可以工作。请注意,操作栏仅适用于 android api 11 及更高版本。

于 2013-11-29T12:08:15.343 回答