我已经创建了一个按钮,我需要一些来自按钮的响应,在触摸按钮时,按钮焦点应该能够像改变背景颜色一样。我怎么能这样做?
我的代码是, 查看:
<Button class="button" id="proceedButton" onClick="openQuestionnaire">Proceed</Button>
样式:
".button":{
width: '50%',
top: '25dp',
borderRadius: 8,
borderWidth: 1,
borderColor: '#808080',
backgroundGradient: {
type: "linear",
startPoint: { x: "0%", y:"0%"},
endPoint: { x: "0%", y:"100%"},
colors: [
{ color: "#4F94CD", offset: 0.0 },
{ color: "#4F94CD", offset: 1.0 }
]
}
}
控制器:
$.proceedButton.addEventListener('touchstart', function() {
$.proceedButton.isFocused = true;
});
$.proceedButton.addEventListener('touchend', function() {
$.proceedButton.isFocused = false;
});
以上代码无效。只需触摸按钮,我就需要在背景颜色上略有变化。
任何解决方案!!
答案 0 :(得分:2)
使用此属性并传递颜色代码
backgroundSelectedColor : "RED"
对于普通视图,focusable必须为true。 您可以参考此http://docs.appcelerator.com/titanium/latest/#!/api/Titanium.UI.Button-property-backgroundSelectedColor
我希望它可以帮到你,
答案 1 :(得分:2)
Alloy xml就像这样
<Button class="button" id="proceedButton" onClick="openQuestionnaire">Proceed</Button>
然后按钮属性就像这样
".button":{
width: '50%',
top: '25dp',
borderRadius: 8,
borderWidth: 1,
borderColor: '#808080',
backgroundSelectedColor : "red",
backgroundSelectedImage : "/my_image.png",
backgroundGradient: {
type: "linear",
startPoint: { x: "0%", y:"0%"},
endPoint: { x: "0%", y:"100%"},
colors: [
{ color: "#4F94CD", offset: 0.0 },
{ color: "#4F94CD", offset: 1.0 }
]
}
}
您可以在触摸焦点上设置所选图像或背景颜色。 您不需要在控制器中编写的控制器代码。 对于某些对象,您也可以使用selectedColor。 您还可以设置backgroundFocusedImage,
答案 2 :(得分:0)
正如@CodeForFun所提到的,你可以使用按钮的backgroundSelectedColor
属性。
以下是Titanium中按钮可以使用的所有状态。
希望这会有所帮助。
修改:使用示例:
查看:
<Button class="button" >Proceed</Button>
TSS:
".button":{
width: '50%',
top: '25dp',
backgroundSelectedColor : "#4F94CD" //usage
}