Вопрос

Я работаю над приложением, в котором есть несколько разных представлений, два из которых являются DetailViewController.h & .m и AddViewController.h & .m. Ни одно из этих конкретных представлений не имеет файлов IB XIB, связанных с ними, они просто программно сгенерировали UitableViews. По сути, эти представления одинаковы, единственная разница, заключается в том, что в AddViewController вы помещаете информацию в ячейки, а в DefitalyViewController та же самая информация просматривается и редактируется. По сути, ViewDidload для AddViewController переопределяет просмотр DetailViewController с различными элементами навигационной панели и заголовком. Мой вопрос: за пределами IB, как мне ссылаться на то, в каком представлении я нахожусь? Я хочу, чтобы в DetailView было доступно несколько коммутаторов и кнопок, которые я не хочу доступен в AddView. Но, как бы то ни было, они подтверждают ту же информацию и в настоящее время просто меняют элементы навигационной панели, они не отдельные, как я хотел бы, чтобы они были. Внутри DetailView ViewDiddload я думаю, что мне нужно что -то, где это похоже на

if(currentView = DetailView) {
self.view addSubview: onOffSwitch;
}
else onOffSwitch. hidden = YES;

Или что-то в этом роде. Очевидно, что если бы приведенный выше код действительно сработал, я бы не написал этот вопрос :) Это, вероятно, просто проблема синтаксиса, которую я не могу выбить, если бы вы могли помочь мне, это было бы очень признателено! Спасибо

Это было полезно?

Решение

Ну, есть похожий вопрос здесь

Но для вашего случая вы можете сделать это так:

if([[self class] isKindOfClass:[DetailViewController class]]) {
self.view addSubview: onOffSwitch;
}
else 
onOffSwitch. hidden = YES;
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top