gpt4 book ai didi

iphone - Xcode addSubview 具有唯一名称

转载 作者:行者123 更新时间:2023-12-01 17:59:18 27 4
gpt4 key购买 nike

我有一个创建 UIImageView 并允许用户从库中选择图像的按钮。

它还以 var 的形式递增,称为“数量”

如果他再次按下按钮,它会做同样的事情。他按了多少次。

    -(void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info
{



UIImageView *subView;
CGRect frame = CGRectMake(60, 100, 200, 200);
subView = [[UIImageView alloc] initWithFrame:frame];



NSString *mediaType = [info
objectForKey:UIImagePickerControllerMediaType];
[self dismissModalViewControllerAnimated:YES];
if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) {
UIImage *image = [info
objectForKey:UIImagePickerControllerOriginalImage];


subView.image = image;
if (newMedia)
UIImageWriteToSavedPhotosAlbum(image,
self,
@selector(image:finishedSavingWithError:contextInfo:),
nil);
}
else if ([mediaType isEqualToString:(NSString *)kUTTypeMovie])
{
// Code here to support video if enabled
}

[self.view addSubview:subView];
amount += 1;

NSLog(@"%d", amount);
}

我需要给每个 subview 一个唯一的名称,例如 subView1,subView2,subView3.......
以便我以后可以引用它们。

我怎样才能唯一地识别它们?

最佳答案

你不能给他们名字。您有几个选项可以在以后轻松识别它们。

第一个是子类UIVIew并添加 NSString存储名称的属性。然后,您可以遍历父 View 的 subview ,检查以确保您正在查看的 subview 属于您的新子类,然后检查它的名称。这种方法的主要优点是您的 subview 可以包含您想要的任何标识数据。一个缺点是需要检查类类型等......有点笨拙,但通常更好的编码。

另一种选择是使用 UIView的标签属性,即 NSInteger .您可以为每个 subview 赋予其自己的标签。该系统的两个优点:它内置于 UIView , 你可以使用父 View 的 viewWithTag找到特定 subview 的方法(尽管这有点冒险,因为标签默认情况下不是唯一的,并且没有什么可以阻止您将相同的标签分配给多个 subview )。

关于iphone - Xcode addSubview 具有唯一名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12715617/

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