按下时突出显示标签 Swift
Highlight Label while pressed Swift
出于某种原因,我不得不使用标签而不是按钮。现在我试着弄清楚如何假装它是一个普通按钮。要点:按下标签时突出显示文本(使用 UITapGestureRecognizer
实现的动作)。
所以我试图找到任何在触摸结束时实现的手势,但我没有找到任何东西:(
有什么建议吗?
此致,
帕特里克
UIButton 实际上有一个布尔值,您需要为不同的活动分配这些布尔值,其中一个布尔值被称为突出显示。
如果您使用的是视图构建器,它将位于右侧的属性检查器下方,否则您将使用 btnHighlight.highlighted,其中 btnHighlight 是按钮的出口名称
编辑:如果你必须绝对使用 uilabel,你可以做很多事情,比如在标签内分配手势 class 或覆盖 touchesEnded 事件
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
super.touchesEnded(touches, withEvent: event)
for touch in touches
{
let location = touch.locationInNode(self);
self.highlighted = true; //I am not sure how you would be handling this, this will run for every time a new touch happens.
break;
}
if(touches.count == 0)
{
self.highlighted = false;
}
}
请注意,您可能需要在触摸时进行投射
UIButton 实际上有一个布尔值,您需要为不同的活动分配这些布尔值,其中一个布尔值被称为突出显示。
出于某种原因,我不得不使用标签而不是按钮。现在我试着弄清楚如何假装它是一个普通按钮。要点:按下标签时突出显示文本(使用 UITapGestureRecognizer
实现的动作)。
所以我试图找到任何在触摸结束时实现的手势,但我没有找到任何东西:(
有什么建议吗?
此致, 帕特里克
UIButton 实际上有一个布尔值,您需要为不同的活动分配这些布尔值,其中一个布尔值被称为突出显示。
如果您使用的是视图构建器,它将位于右侧的属性检查器下方,否则您将使用 btnHighlight.highlighted,其中 btnHighlight 是按钮的出口名称
编辑:如果你必须绝对使用 uilabel,你可以做很多事情,比如在标签内分配手势 class 或覆盖 touchesEnded 事件
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
super.touchesEnded(touches, withEvent: event)
for touch in touches
{
let location = touch.locationInNode(self);
self.highlighted = true; //I am not sure how you would be handling this, this will run for every time a new touch happens.
break;
}
if(touches.count == 0)
{
self.highlighted = false;
}
}
请注意,您可能需要在触摸时进行投射
UIButton 实际上有一个布尔值,您需要为不同的活动分配这些布尔值,其中一个布尔值被称为突出显示。