我正在尝试创建几个UIImageViews(最好带有for循环),然后移动它们,但我不知道如何,因为我很难弄清楚如何引用它们是否将以编程方式制作。
所以我想要这样的东西:
for (int i = 0; i < 2; i++)
{
UIImageView *iv = [[UIImageView alloc]initWithImage:[UIImage imageNamed: picturo]];
CGRect rect = CGRectMake((i * 50) + 50,30, 25, 25);
[iv setFrame:rect];
iv.tag = i;
[self.view addSubview:iv];
}
(iv with tag of 0).center.y = 80; // <-- How do I do that!!
显然这个例子没有实际用途,我可以将上面的"rect"的 y 值更改为 80,但我想知道如何:
a. 创建多个 uiimageviews(或任何与此相关的对象),并能够单独识别/引用/操作每个视图(我不知道如何操作,但我会通过唯一命名它们或使用标签来假设)和
b. 能够识别/引用/操作以编程方式创建的对象。
创建带有标签的视图的工作方式。
若要访问这些视图,请使用视图上的 viewWithTag
属性来标识其子视图之一:
UIView* subview = [self.view viewWithTag:0];
subview.center = CGPointMake(subview.center.x, 80);
(你不能写到view.center
的x
或y
,你必须重新创建整个东西。其他几何结构如CGSize
、CGRect
)也是如此。