点击 UIButton 时没有发生动作
Posted
技术标签:
【中文标题】点击 UIButton 时没有发生动作【英文标题】:Action not happening when tapping UIButton 【发布时间】:2013-09-01 15:39:06 【问题描述】:我有一个UIButton
放在UIImageView
和UILabel
上。
当我按下按钮时,我希望图像在UIImageView
中显示并且UILabel
的文本颜色要更改,当我拉起手指时,我希望图像消失并且@ 的文本颜色987654326@变回黑色。
- (void)highlightActivity:(id)sender
activityImage.image = [UIImage imageNamed:[[NSMutableString alloc] initWithString:activityName]];
activityLabel.textColor = activityColor;
- (void)deHighlightActivity:(id)sender
activityLabel.textColor = [UIColor blackColor];
activityImage.image = nil;
当我按下按钮然后松开时它工作正常,但是当我点击按钮时出现问题,图像根本没有显示并且文本颜色没有改变。
任何想法如何在点击时实现它?
谢谢, 诺尔。
【问题讨论】:
您在连接检查器中设置了哪些操作? highlightActivity - 触地。 deHighlightActivity - 内外修饰。 我认为它不起作用,因为您正在处理 2 个不同的操作。他们不能同时被解雇。只有一个或另一个。为此,您可能必须使用 touchesBegan: 和 touchesEnded: 来处理您想要的。 我不需要他们两个都开火。我只需要其中之一。我的目标是在我按下按钮时在按钮上显示图像,并在我拉起手指时从按钮上删除图像。 (不管是在里面还是外面我不在乎)。 【参考方案1】:我认为问题在于你同时附上了两个
Touch Up inside and outside on deHighlightActivity.
因为,当您按下按钮时,您最终会释放(修饰)按钮,如果您在 deHighlightActivity 的内部和外部都进行了修饰,则每次都会调用该动作。这样您的点击操作也会调用 deHighlightActivity 。
我不知道您究竟想在这里做什么,但看起来您的设计存在一些冲突。
【讨论】:
我希望该动作一直被调用。我的问题是它不会仅在我点击按钮时发生。以上是关于点击 UIButton 时没有发生动作的主要内容,如果未能解决你的问题,请参考以下文章