0

我站在MainMenuScreen上,从那里添加了一个模块名称MenuIcons但我不知道为什么MenuIcons中的单击事件根本不起作用。但是,所有视图、图像和其他内容都可以完美显示,没有任何警告或错误。

这是代码的场景:

MainMenuScreen.js

function MainMenuScreen(userinfojson) {
    var main_window = Titanium.UI.createWindow({
        backgroundImage : '/assets/inventoryBackground.png'
    });
    var MainScreen = [];
    var MenuIcons = require('ui/common/menus/MenuIcons');
    MainScreen.menuIcons  = new MenuIcons(active_screen);
    main_window.add(MainScreen.menuIcons);

    var StatusScreen = require('ui/common/MenuScreen/StatusScreen');
    MainScreen.statusScreen = StatusScreen(userinfojson);
    main_window.add(MainScreen.statusScreen);

    return main_window;    
}
module.exports = MainMenuScreen; 

菜单图标.js

function MenuIcons(active_menu) {
    var view = Titanium.UI.createView({
        top : "12%",
        height : "10%"
    });
    var iconstatus_imageview = Titanium.UI.createImageView({
        left : '0%',
        top : '0%',
        image : '/assets/iconStatus.png',
        height : '100%',
        width : '13.8%'

    });
    iconstatus_imageview.addEventListener('click', function(e) {
        alert("Clicked");
    });

    view.add(iconstatus_imageview);
    return view;
}
module.exports = MenuIcons;

因此,此“ iconstatus_imageviewimageview的单击事件不起作用请帮助... :(

4

1 回答 1

1

为了解决这个问题,我会为所涉及的视图/窗口添加颜色,看看是否有一个被绘制在另一个上。我最初没有看到 StatusScreen 代码的猜测是它在 MenuIcons 的顶部,但它是透明的,你看不到它。

我可能会注释掉这一行,看看菜单事件是否触发:

main_window.add(MainScreen.statusScreen);

此代码有效,因此问题在您粘贴的代码中不可见。因此,应该查看您编辑的任何代码。

应用程序.js

var main_window = Titanium.UI.createWindow({
    //backgroundImage : '/assets/inventoryBackground.png'
    backgroundColor: 'white'
});
var MainScreen = [];
var MenuIcons = require('MenuIcons');
//MainScreen.menuIcons = new MenuIcons(active_screen);
MainScreen.menuIcons = new MenuIcons();
main_window.add(MainScreen.menuIcons);

// var StatusScreen = require('ui/common/MenuScreen/StatusScreen');
// MainScreen.statusScreen = StatusScreen(userinfojson);
// main_window.add(MainScreen.statusScreen);

//return main_window;
main_window.open();

菜单图标.js

function MenuIcons(active_menu) {
    var view = Titanium.UI.createView({
        top : "12%",
        height : "10%"
    });
    var iconstatus_imageview = Titanium.UI.createImageView({
        left : '0%',
        top : '0%',
        image : 'medical.png',
        height : '100%',
        width : '13.8%'

    });
    iconstatus_imageview.addEventListener('click', function(e){
        alert('clicked');
    });

    view.add(iconstatus_imageview);
    return view;
}
module.exports = MenuIcons;
于 2013-01-04T17:37:32.170 回答