You need to hold the reference to your MyLayerDelegate variable so it wouldn't be released by the system. In your controller class's .h file, add the following line, @property (nonatomic, strong) MyLayerDelegate *myLayerDelegate; And then create an object for this class in your controller's .m file, and assign to the variable you declared in the .h file such as myLayerDelegate = [[MyLayerDelegate alloc] init]; yourDynamicLayer.delegate = myLayerDelegate; That's all. Frank
... View more