ios - Objective C - 点击手势计数

标签 ios objective-c macos ipad

我的 View 上有一些imageView,现在我想更改imageView中图像的background.color。通过在同一个 imageView 上第二次单击,它应该更改为第一张图像。

我怎样才能做到这一点?

最佳答案

保留一个 BOOL 或枚举 ivar 来跟踪图像状态。当对点击使用react时,交换图像。

您可以拥有 ImageView 的自定义子类,以保持此状态始终与正确的对象关联。

// .h
typedef enum { StateOriginal, StateFlipped } FlipState;

@interface FlippableImageView : UIImageView
@property (nonatomic, assign) FlipState state;
@end

// in view controller
if (flipImageView.state == StateOriginal) {
  flipImageView.image = imageFlipped;
  flipImageView.state = StateFlipped;
}
else { 
  flipImageView.image = imageOriginal;
  flipImageView.state = StateOriginal;
}

该类还可以保存两个图像并运行漂亮的动画...

关于ios - Objective C - 点击手势计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18018347/

相关文章:

iPhone 4 UI 设计对比 iPhone 5

ios - RxSwift 订阅数据模型属性更改的正确方法

macos - 如何在共享上下文中渲染到 FBO?

macos - 无法在 Mac OS X 上 rdp 到 Azure

macos - 具有嵌套相对宽度的自动布局性能?

ios - 在 UITableView 中使用 UIButton 发送多个标签

iphone - 从 5 月 1 日起 - iPhone 5 支持 - 那么应用商店支持的最低 iOS 版本是多少?

ios - 不使用约束的 UIToolbar 的 safeAreaInsets

iphone - 如何在 mfmailcomposerview 中关闭键盘

iphone - 无法打开文档 ".xib"。无法读取存档