我正在努力实现的目标

简而言之:

使用UIView作为容器,当其移动时将移动其“子视图”,并在其可见性更改时自动设置其可见性

长版:

我想在一个UIView中有多个UIImageView,每当UIView可见时,所有UIImageView都可见,当UIView隐藏时,所有UIImageView被隐藏,当UIView更改位置时,所有UIImageView将保留其UIView父级中的位置。

附加信息

我正在动态创建一个UIView,并且还创建了一些UIImageView,但我希望[UIView addSubview:UIImageViewInstance];能够解决这个问题,不幸的是,事实并非如此。

我没有使用界面生成器!



我如何实现以上所说的?如果您认为UIView不是解决我的问题的正确方法,请随时提出其他选择。

最佳答案

如果我正确理解了您的问题,则将IMO与UIView一起用于UIImageView子视图是正确的方法。您所说的内容也应该可以正常工作-创建UIView,添加UIImageView子视图,然后移动父视图并更改其可见性,等等。

我建议使用这样的东西:

UIView *parent = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 300)];
[self.view addSubview:parent];

//Make a horizontal row of 5 images
for (int i = 0; i < 5; i++) {

    UIImageView *imgV = [[UIImageView alloc] initWithFrame:CGRectMake(i * 25, 0, 20, 20)];
    [imgV setImage:[UIImage imageNamed:@"yourimage.png"]];
    [parent addSubview:imgV];
}

//Then you should be able to do things like this and it will apply to the subviews as well
[parent setCenter:self.view.center];
[parent setAlpha:0.8];
//Etc

09-10 05:47
查看更多