在SWIFT视图中为alpha设置一组元素

时间:2015-05-14 15:01:39

标签: swift layout views alpha

我使用Xcode的Autolayout创建了一个布局。我有很多带有label和imageView的视图。是否有任何方法可以更改标签和imageView的alpha而无需在代码中的ViewController中为所有这些创建插座? 我可以在代码中更改视图中所有元素的alpha值,而不是为视图更改它吗?

2 个答案:

答案 0 :(得分:1)

当然,有很多方法可以解决这个问题。

  1. 您可以设置array ( 'collection' => array ( 0 => array ( 'data' => array ( 'product_id' => '9', 'sku' => 'Tilapia', 'name' => 'Tilapia', 'set' => '4', 'type' => 'simple', 'category_ids' => array ( 0 => '2', 1 => '4', ), 'website_ids' => array ( 0 => '1', ), ), ), 1 => array ( 'data' => array ( 'product_id' => '10', 'sku' => 'Deshi Rui', 'name' => 'Deshi Rui', 'set' => '4', 'type' => 'simple', 'category_ids' => array ( 0 => '2', 1 => '4', ), 'website_ids' => array ( 0 => '1', ), ), ), 'count' => 2, ), ) 个想要更改字母的视图。 IBOutletCollection实际上只是运行时为您设置的视图对象数组。请注意,不保证集合视图中对象的顺序。

  2. 您可以在视图上设置数字范围的标记(以非零值开头),然后使用for循环和UIView方法IBOutletCollection

  3. 您可以在代码中循环浏览所有视图的子视图,并直接操作视图的alpha。

答案 1 :(得分:1)

您可以通过视图子视图枚举并以这种方式设置alpha。

for v in view.subviews {
    let view = v as! UIView
    view.alpha = 0
}

另一种方法是使用您可以在界面构建器

中创建的IBOutletCollection