iOS版:取消void函数
我创建例如changeColor
一个方法调用该方法,我们使用iOS版:取消void函数
[self changeColor];
,但我怎么能取消这些方法?
编辑: 这里是我的代码,我有几个按钮,他们的一些图像添加到图像视图
- (void) setImagesFrame1 {
NSMutableArray *imageArray = [[NSMutableArray alloc]initWithCapacity:12];
for (int i = 0; i <= 12; i++) {
NSString *fileName = [NSString stringWithFormat:@"a%d.png",i];
UIImage *j = [UIImage imageNamed:fileName];
UIImageView *tempImage = [[UIImageView alloc]initWithImage:j];
[imageArray addObject:tempImage];
[self createPageWithImage:tempImage forPage:i];
}
}
- (void) setImagesFrame2 {
NSMutableArray *imageArray = [[NSMutableArray alloc]initWithCapacity:12];
for (int i = 0; i <= 12; i++) {
NSString *fileName = [NSString stringWithFormat:@"s%d.png",i];
UIImage *j = [UIImage imageNamed:fileName];
UIImageView *tempImage = [[UIImageView alloc]initWithImage:j];
[imageArray addObject:tempImage];
[self createPageWithImage:tempImage forPage:i];
}
}
等等...
我打电话给我的方法,这个动作:
- (IBAction)openFrames:(UIButton *)sender {
[captureView addSubview:framesPreviewView];
[framesPreviewView sendSubviewToBack:captureView];
framesPreviewView.frame = CGRectMake(img.bounds.origin.x, img.bounds.origin.y, img.bounds.size.width, img.bounds.size.height);
//buttons
if (sender == frame1) { [self setImagesFrame1]; }
if (sender == frame2) { NSLog(@"frame2"); }
if (sender == frame3) { [self setImagesFrame3]; NSLog(@"frame3"); }
}
当我按下frame1按钮的图像将被添加到我的观点,问题是当我按frame2按钮这个方法的图像也添加到我的观点我需要避免出现这种情况,这意味着当我触摸到每个按钮其他按钮的方法应该取消
你的子视图数组的最后一个视图将是图像,你应该使用方法[view removeFrom superView]; 但是,要做到这一点,你需要在子视图数组上使用快速枚举(for-In循环)。 如果你想完全确定,你可以检查重新调用的对象,如果它属于UIImageView类。然后你应该在你的setImages方法中执行剩余的语句。例如:
UIView * tempView;
for(tempView in self.subviews) {
if([tempView isKindOfClass:[UIImageView class] ]){
[tempView removeFromSuperView];
}
}
`
要留下空隙函数执行return语句...
return;
究竟应该把这个代码放在哪里?例如一个按钮执行该功能,另一个则取消它 –
请发布一些关于您正在尝试实现的功能的代码和详细信息。 –
我编辑我的问题 –
您可以:
当帧1被压- 禁用帧2按钮
事情是这样的:
- (void) setImagesFrame1 {
frame2.enabled = NO;
[... your code ...]
frame2.enable;
}
因此,如果有人按下按钮1,他不能按按钮2(和重绘的东西),直到所有操作完成。
没有我的问题是关于添加对象到我的UIView –
你说的 '取消' 是什么意思?函数是如何被调用的?你有没有听说过'return'关键字? –
请解释你的意思是取消吗? –
从功能内取消或从功能外取消? – Jaybit