iphone - 自定义 UIButton 无法与链接的 UIImageView 交互

标签 iphone uiimageview uibutton

我被下面的代码困住了。 我的 UIButton 扩展类无法显示或隐藏 UIImageView 的一些原因

我的方法正在被调用,并且 imageview 不为零。

这是代码:

@interface UILinkedImageButton : UIButton {
    IBOutlet UIImageView *linkImageView;
}

@property (nonatomic, retain) IBOutlet UIImageView *linkImageView;

@end

#import "UILinkedImageButton.h"

@interface UILinkedImageButton ()
- (void)showImage;
- (void)hideImage;
@end
-------------------------------------------------------------------------------------------------

@implementation UILinkedImageButton


@synthesize linkImageView;

- (void) dealloc{

    [linkImageView release], linkImageView = nil;
    [super dealloc];
}

- (id) initWithCoder:(NSCoder *)aDecoder
{
    self = [super initWithCoder:aDecoder];

    if(self){
        [self addTarget:self action:@selector(showImage) forControlEvents:UIControlEventTouchDown];
        [self addTarget:self action:@selector(hideImage) forControlEvents:UIControlEventTouchUpInside];
        [self addTarget:self action:@selector(hideImage) forControlEvents:UIControlEventTouchUpOutside];
    }

    return self;
}

- (void)showImage
{
    if(self.imageView){
        NSLog(@"UILinkImageButton - showImage - currentStatus: %@", self.imageView);
        self.imageView.hidden = NO;
        [self.superview layoutIfNeeded];
    }   
}

- (void)hideImage
{
    if(self.imageView){
        NSLog(@"UILinkImageButton - hideImage");
        self.imageView.hidden = YES;
    }
}

@end

最佳答案

正如 Thomas Müller 在评论中提到的那样,我也认为操作应该在 Controller 中。

除此之外,在您的代码中,您正在更改“imageView”对象的隐藏属性,而您在声明中创建的自定义 ImageView 是“linkImageView”。 该代码不会引发错误,因为'imageView'是在 UIButton 中声明的按钮的只读属性,并且它代表按钮 ImageView 而不是您的 linkImageView

希望这有帮助。

谢谢, 斯瓦普尼尔

关于iphone - 自定义 UIButton 无法与链接的 UIImageView 交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3210649/

相关文章:

ios - 如何检查 NSData 在 UIImage 中的使用是否有效

ios - 如何将 UILabel 放置在 UIImageView 下方,使其始终均匀放置

ios - 如何使单元格中的 UIButton 在被点击后立即保留特定状态?

iphone - 如何使可视键盘出现在我的 UIToolBar 上方?

iphone - 增加 TableView 标题的大小

ios - 如何在 swift 3 中从相机预览 View 裁剪图像?

ios - UIButton 图像的最大缩放比例?

iPhone UIView :Is it possible to enable userinteraction only on subviews?

iphone - 哪种格式支持播放视频的音频文件?

iphone - iPhone 设备屏幕关闭模式下可以录制视频吗?