Мой вопрос заключается в том, что я добавил представление как subview в Root view.When я изменил альфа-значение корневого представления, то же самое происходит и в subview. Фактически, мне не нужно обновление в subview.Is есть какое-либо решение как это.
Не обновлять subview с помощью альфа-значения супервизора
Ответ 1
Это изменит только альфу корневого представления, а не остальные
self.view.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.5];
Ответ 2
Основываясь на ответе @shabbirv, можно также использовать IB color picker
Ответ 3
Вам нужно будет изменить структуру своих просмотров. Вместо того, чтобы укладывать свои подпрограммы на вид корней, создайте слой поверх вашего корневого представления, но все же добавьте subviews в корневой каталог. При смене альфа слоя он не будет влиять на subviews. Пример структуры ниже.
Текущая структура:
RootView->Subviews //Changing RootView alpha effects Subviews.
Необходимая структура:
RootView->View->Subviews(Still Added to RootView) //Changing alpha of Layer doesn't effect subviews.
Надеюсь, что это поможет.
Ответ 4
Это также решит это, изменив цвет корневого представления ниже, это не повлияет на подвью.
[rootView setBackgroundColor:[[UIColor blackColor] colorWithAlphaComponent:0.7]];