ios - 单击时如何检查 ImageView 标签

标签 ios objective-c uiimageview tags uiimage

我有 UIImageView 在屏幕上显示每个都有标签值。然后,当我长按时,我将从 UIView 中删除图像。但我想在长按时检查我要删除的图像。这里 ObjectAddedToScreen 是保存显示图像的模型 View 。

  mmageView=[[UIImageView alloc]initWithFrame:CGRectMake(50,50,150,150)];


     [mmageView setUserInteractionEnabled:YES];



     //  [mmageView setImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:[productimg_array objectAtIndex:[sender tag]-1]]]]];


     [mmageView setImageWithURL:[NSURL URLWithString:[productimg_array objectAtIndex:[sender tag]-1]] placeholderImage:nil options:SDWebImageProgressiveDownload completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType) {

     // [loadingViewLbl2 removeFromSuperview];

     }];

     [mmageView setTag:[sender tag]-1];


     object = [[ObjectAddedToScreen alloc] init];
     object.productDescription = [descript_array objectAtIndex:[sender tag]-1];
     object.view = mmageView;
     [self.objectsAddedToScreen addObject:object];

 object.object_sku=[sku_array objectAtIndex:[sender tag]-1];


     [self.view addSubview:mmageView];

长按删除:
-(void)dblongPress:(UILongPressGestureRecognizer*)sender{
 CGPoint tapLocation1 = [sender locationInView: self.view];
 for (UIImageView *imageeView1 in self.view.subviews) {
 if (CGRectContainsPoint(imageeView1.frame, tapLocation1)) {

 //    [imageeView1 removeFromSuperview];

 [imageeView1 setHidden:YES];


 }
 }

 }

UIImageView_ID 存储:
  const char *sqlInsert = [[NSString stringWithFormat:@"insert into product_sku (sku) values ('%@')", object.object_sku] cStringUsingEncoding:NSUTF8StringEncoding];

最佳答案

您的代码可能如下所示:

mmageView=[[UIImageView alloc]initWithFrame:CGRectMake(50,50,150,150)];
UILongPressGestureRecognizer *longPressRecognizer = [[UILongPressGestureRecognizer alloc]     initWithTarget:self action:@selector(dblongPress:)];
[mmageView addGestureRecognizer:longPressRecognizer];

// the rest is like yours:
[mmageView setUserInteractionEnabled:YES];



 //  [mmageView setImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:[productimg_array objectAtIndex:[sender tag]-1]]]]];


 [mmageView setImageWithURL:[NSURL URLWithString:[productimg_array objectAtIndex:[sender tag]-1]] placeholderImage:nil options:SDWebImageProgressiveDownload completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType) {

 // [loadingViewLbl2 removeFromSuperview];

 }];

 [mmageView setTag:[sender tag]-1];


 object = [[ObjectAddedToScreen alloc] init];
 object.productDescription = [descript_array objectAtIndex:[sender tag]-1];
 object.view = mmageView;
 [self.objectsAddedToScreen addObject:object];

 object.object_sku=[sku_array objectAtIndex:[sender tag]-1];


 [self.view addSubview:mmageView];

那么手势识别器处理程序是:
- (void)dblongPress:(UILongPressGestureRecognizer *)sender
{
    // object SKU is stored in imageView's tag
    UIImageView *imageView = (UIImageView *)sender.view;
    NSInteger object_sku = sender.view.tag;

    // remove the object from database
    const char *sqlDelete = [[NSString stringWithFormat:@"delete from product_sku where sku = %d", object_sku] cStringUsingEncoding:NSUTF8StringEncoding];
    [database executeUpdate:sqlDelete];

    // hide the image view
    imageView.hidden = YES;
}

关于ios - 单击时如何检查 ImageView 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24303174/

相关文章:

objective-c - afnetworking json到多维数组

ios - 性能 : UIImage vs UIView

iphone - 为什么我得到的是黑框而不是选择器?

ios - UIScrollView subview 不会调整大小

ios - UIImageView 不会显示从 UIImagePicker 中选择的图像

iOS App 和 youtube 客户端

iphone - NSURLIsExcludedFromBackupKey 在 iOS 5.1 之前崩溃

ios - 为什么 CocoapPods 不接受类的评论?

ios - 检查 MDM 服务器是否已连接

iphone - 如何设置 TableView 单元格附件 View 以保留先前初始化的 UIImageView?