操作以编程方式创建的UIViews

时间:2011-07-06 16:36:05

标签: objective-c ios uiview

对于您以编程方式创建的视图,操作hiddenalpha等属性的最佳方法是什么?

例如,假设你这样做:

  [self insertSubview:self.newview aboveSubview:self.tempSplash];

此时你对newview做的任何事情对屏幕上的实际视图都没有影响,我注意到了。

现在我可以得到一个指向我的新子视图的指针,但是如果它不在笔尖中,那么我唯一可以选择做一些笨重的选择:

 UIView*controlPointer=[self.subviews objectAtIndex:whatever];

问题是,没有优雅的方法来计算新创建的视图的索引号,处理子视图的索引号似乎有点极端。是否有另一种获得指向这个以编程方式创建的子视图的好方法,所以我可以这样做:

 controlPointer.alpha=1;

2 个答案:

答案 0 :(得分:0)

您要添加self.newview的事实表明您有一个类型为UIView的ivar?因此,每当您需要更改视图的属性时,只需调用类似:

self.newview.hidden = YES

答案 1 :(得分:0)

如果您已经拥有self.newView,那么您应该能够

  self.newView.alpha=1; 

 self.newView.hidden=NO;

如果你没有看到对此的回应,那么其他错误。 你确定self.newView不是null吗?

 NSLog(@" self.newview is 0x%x", self.newView);  // should NOT be 0x0