在一个UIView中,我有5个图标(UIImageView)。我显示/隐藏图标。没关系。但是我想如果我隐藏2图标,其余未隐藏(或未删除)的内容将显示视图的中心。

如果显示全部:

http://sherad.info/elotte.jpg

我从视图2图标中删除了(我尝试了set hiden,但效果相同)

[share removeFromSuperview];
[sms removeFromSuperview];

在这之后:

http://sherad.info/utana.jpg

我希望3图标显示在视图中心。因此,以某种方式将图标重新排列在UIView中。我该如何解决?
谢谢。

最佳答案

我假设图标后面的黑色区域是UIView,并且图标已添加到静态位置?相反,如果您创建了第二个透明的UIView怎么办。确定要显示的图标并将它们添加到第二个视图中。它将以第二个视图与第一个视图的大小完全相同的方式开始,但是一旦您想要显示更少的内容,请从第二个视图中删除所有图标

for (yourIcon *icon in [secondView subviews]) {
    [icon removeFromSuperview];
}


将第二个视图的框架重置为所需的长度,然后重新添加图标,然后将其放置在第一个视图的中心

secondView.center = firstView.center;


要么做

[secondView setNeedsDisplay]


或将其重新添加为firstView的子视图(如果您之前已将其删除)(我认为这不是必需的)。

关于ios - UIView中心X UIImageView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12630425/

10-11 12:28
查看更多