gpt4 book ai didi

objective-c - 自定义 CALayer 分配后 UIButton 不检测触摸

转载 作者:行者123 更新时间:2023-11-29 04:21:54 26 4
gpt4 key购买 nike

除非注释掉下面的委托(delegate)分配,否则我的 UIButton 的目标操作不会被调用,但随后我会丢失自定义绘图。我错过了什么?

- (void)createLayerForPaletteAtIndex:(int)paletteIndex onButton:(UIButton *)button
{
self.colorPaletteLayer = button.layer;
self.colorPaletteLayer.delegate = self; // Must implement drawLayer:inContext
NSString *stringForIndex = [NSString stringWithFormat:@"%d",paletteIndex];
self.colorPaletteLayer.name = stringForIndex;
button.clearsContextBeforeDrawing = YES;
button.layer.opaque = YES;
[self.colorPaletteLayer setNeedsDisplay]; // Calls drawLayer:inContext
}

最佳答案

您正在劫持按钮的图层。你不应该那样做。 UIKit 并不期望你这样做。您应该创建一个子层并将其添加到按钮的层。

关于objective-c - 自定义 CALayer 分配后 UIButton 不检测触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12874752/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com