【发布时间】:2008-12-09 06:05:25
【问题描述】:
我有很多用户抱怨 iPhone 上的小“i”信息按钮很难触摸。好的,很简单——我只是在它后面贴了一个大而隐蔽的按钮,即使是最粗心的手指触摸也不会错过它,当你触摸它时,它会执行 infoButtonAction。
问题是,我想让信息按钮本身闪烁大约 0.25 秒,只是为了提供视觉上的“这就是正在发生的事情”类型的反馈。我的意思是,我已经假设您打算点击“i”按钮,所以我只是将其视为您确实点击了它。
我试过了,但它不起作用:
UIImage* normalImage = [_infoButton imageForState:UIControlStateNormal];
UIImage* highlighted = [_infoButton imageForState:UIControlStateHighlighted];
_infoButton.highlighted = YES; // flash the button
[_infoButton setImage:highlighted forState:UIControlStateNormal];
[_infoButton setNeedsDisplay]; //* FIXME: No flash?!
[(AppDelegate*)[[UIApplication sharedApplication] delegate] infoTap]; // do the info action
_infoButton.highlighted = NO;
[_infoButton setImage:normalImage forState:UIControlStateNormal];
[_infoButton setNeedsDisplay];
关于如何获得我想要的行为的任何想法?
(我也愿意接受有关用户反馈的其他想法,但仍然很好奇我会如何做到这一点。想象一下,相反,我有一个“游戏”/恶作剧,您可以在其中按下“确定”按钮并“取消” " 闪烁,反之亦然,或者同样愚蠢的东西。)
【问题讨论】:
标签: cocoa-touch