我是钛的新手。
我已经查看了 3 个视图,并希望在iPhone 应用程序的按钮单击时隐藏显示该视图。
知道如何实现这一目标吗?
您可以非常轻松地隐藏/显示视图,这是一个自包含的示例:
var win = Ti.UI.createWindow();
var view = Ti.UI.createView({
width : 100,
height : 100,
backgroundColor : 'red'
});
var redView = Ti.UI.createView({
title : 'Hide / Show Red View',
bottom : 0,
width : 200,
height : 35
});
var visible = true;
button.addEventListener('click', function(e) {
if(visible) {
redView.hide();
} else {
redView.show();
}
visible = !visible;
});
win.add(redView);
win.add(button);
win.open();
虽然另一个答案当然很有用,但另外两种(稍微)不同的方法可以做同样的事情,以防万一当你使用 show() 和 hide() 时 Titanium 会翻转。
//Method 1, using part of Josiah Hester's code snippet
var visible = true;
button.addEventListener('click', function(e) {
if(visible) {
redView.setVisible(false); //This is the exact same thing as hide() method
} else {
redView.setVisible(true); //This is the exact same thing as show() method
}
visible = !visible;
});
您可以将 opacity 设置为 0 ,即使视图的 visible 属性设置为true ,由于完全不存在不透明度级别,它仍然是不可见的。 如果您希望某些内容可见但不可点击(通过将视图放在不透明度为零的视图后面),这很有用。
//Method 2, same code section
var opacity = 0;
button.addEventListener('click', function(e) {
if(opacity) {
redView.setOpacity(0); //This is the NOT the same thing as hide() method
} else {
redView.setOpacity(1); //This is the NOT thesame thing as show() method
}
opacity = Math.abs(opacity - 1);
});