我正在创建一个 ios应用程序,其中窗口包含一个滑块。我正在使用滑块显示已设置的特定值,即用户不应手动更改该值。我按如下方式创建了滑块
var slider = Ti.UI.createSlider({
min : 0,
max : 60,
width : '60%',
height: 40,
value : 25,
enabled : false,
disabledLeftTrackImage : 'slider.png'
});
此处用户无法更改滑块值,因为我已设置enabled : false
。但是当我这样做时,图像变得模糊(图像中的滑块2)。 我希望它与第一个一样,用户不应手动更改滑块值。是否可以这样做?有没有其他方法可以防止用户更改滑块值?任何人都可以帮助我吗?
答案 0 :(得分:1)
由于您将enabled
设置为false
,因此滑块会淡化,以向用户显示无法与之交互。正如MaxGabriel所说,等效而不淡化滑块的是在Objective-C中将userInteractionEnabled
设置为NO
。根据这个link,Titanium中的等价物是在滑块上方添加一个透明层,这样用户的触摸就不会传递给滑块。以下是链接中的代码。
var overlay_view = Ti.Ui.createView({
height:'100%',
width:'100%',
top:0,
left:0
})
win.add(overlay_view);
答案 1 :(得分:1)
肯定这是不正确的UI,为什么你使用的是用户无法与之交互的滑块?正确使用的是Ti.UI.ProgressBar,否则启用:false灰色行为是正确的,因此用户不会试图摆弄它..
如果没有使用上下文,我不知道,但UI惯例会提出上述内容。
答案 2 :(得分:0)
在Objective-C中,我将userInteractionEnabled
属性设置为NO
。我认为在Titanium中转换为userInteractionEnabled: false
答案 3 :(得分:0)
touchEnabled : false
属性,如var slider = Ti.UI.createSlider({
min : 0,
max : 60,
width : '60%',
height: 40,
value : 25,
touchEnabeld : false,
leftTrackImage : 'slider.png'
});
。我在这里添加它作为答案,因为它对其他人有帮助!!
{{1}}