简体   繁体   English

如何删除动态创建的UIView和UILabel文本?

[英]how to Remove Dynamically Created UIView and UILabel text?

I am adding some dynamic UIView named as *cellSeparator and other UILabels...now what happen is when i again call this code then its rewrite the label text and overwrite on previously created label text...i am not very much aware to this ios development.so can anyone please tell me how can i remove this UIView dynamically before creating again?beacause UIView is dynamically created i dont know how to remove that UIview 我正在添加一些名为* cellSeparator和其他UILabels的动态UIView ...现在发生了什么事,当我再次调用此代码时,它重写了标签文本并覆盖了先前创建的标签文本...我对此并不十分了解ios development.so任何人都可以告诉我如何在重新创建之前动态删除此UIView吗?因为动态创建了UIView我不知道如何删除该UIview

  UILabel *indexLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, self.view.frame.size.height-150, self.view.frame.size.width/2,30)];
            [indexLabel setBackgroundColor:[UIColor clearColor]];
            indexLabel.textColor = [UIColor whiteColor];
            indexLabel.text = @"Details:-";
            indexLabel.font = [UIFont systemFontOfSize:20.00];
            UILabel *tagLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, self.view.frame.size.height-120, self.view.frame.size.width/2, 30)];
            tagLabel.backgroundColor = [UIColor clearColor];


            NSLog(@"LOg %@",imageId);
            NSLog(@"LOg %@",imageStyle);
            NSLog(@"LOg %@",imageType);
            NSLog(@"LOg %@",imageWeight);
            tagLabel.text = [NSString stringWithFormat:@"The Id of Jewl Is:  %@",imageId];

            imageTypelabel= [[UILabel alloc] initWithFrame:CGRectMake(20, self.view.frame.size.height-90, self.view.frame.size.width/2, 30)];
            imageTypelabel.backgroundColor = [UIColor clearColor];
            imageTypelabel.text = [NSString stringWithFormat:@"The Type of Jewl Is:  %@",imageType];
            imageStylelabel = [[UILabel alloc] initWithFrame:CGRectMake(20, self.view.frame.size.height-60, self.view.frame.size.width/2, 30)];
            imageTypelabel.backgroundColor = [UIColor clearColor];
            imageStylelabel.text = [NSString stringWithFormat:@"The style of Jewl Is:  %@",imageStyle];
            imageWeightlabel = [[UILabel alloc] initWithFrame:CGRectMake(20, self.view.frame.size.height-30, self.view.frame.size.width/2, 30)];
            imageStylelabel.backgroundColor = [UIColor clearColor];
            imageWeightlabel.text = [NSString stringWithFormat:@"The weight of Jewl Is:  %@",imageWeight];
            imageWeightlabel.backgroundColor = [UIColor clearColor];
            imageWeightlabel.textColor = [UIColor whiteColor];
            imageTypelabel.textColor = [UIColor whiteColor];
            imageWeightlabel.textColor = [UIColor whiteColor];
            tagLabel.textColor = [UIColor whiteColor];
            UIImage *imageBegin = [UIImage imageNamed:imageName];
            UIImageView *imageView = [[UIImageView alloc] initWithImage:imageBegin];


            UIView *cellSeparator = [[UIView alloc] initWithFrame:CGRectMake(0,545, self.view.frame.size.width ,3)];
            cellSeparator.tag=1;
            [cellSeparator setAutoresizingMask:UIViewAutoresizingFlexibleLeftMargin |
             UIViewAutoresizingFlexibleRightMargin | 
             UIViewAutoresizingFlexibleWidth];       
            [cellSeparator setContentMode:UIViewContentModeTopLeft];    
            [cellSeparator setBackgroundColor:[UIColor whiteColor]];
            [self.view addSubview:cellSeparator]; 

You could write a method to remove all the subviews of the view and modify this code according to your need. 您可以编写一种方法来删除视图的所有子视图,并根据需要修改此代码。

- (void)removeSubviewsOfView
{
    NSArray *subViews = [self.view subviews];
    for(UIView *view in subViews)
    {
        [view removeFromSuperview];
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM