Frage

Ich arbeite an einer App mit verschiedenen Ansichten, zwei von dem sind detailViewController.h & .m und addviewController.h & .m. Keiner dieser besonderen Ansichten hat IB XIB -Dateien zugeordnet, sie haben nur programmatisch UitableViews generiert. Diese Ansichten sind im Wesentlichen gleich, der einzige Unterschied besteht darin, dass Sie im AddViewController Informationen in Zellen einfügen und im DetailViewController dieselben Informationen zu sehen und bearbeitet werden können. Im Wesentlichen überschreibt der ViewDIDLOAD für den AddViewController die DetailViewController -ViewDIDLOAD mit unterschiedlichen Navigationsleistenelementen und -titeln. Meine Frage: Wie beziehe ich mich außerhalb von IB, in welcher Ansicht ich bin? Ich möchte einige Schalter und Schaltflächen im Detailview zur Verfügung haben, die ich in der AddView nicht verfügbar möchte. Aber da sie so sind, sie sind die gleichen Informationen wieder und wechseln derzeit nur die Navigationsleistenelemente, sie sind nicht so trennen, wie ich es möchte. In der DetailView ViewDidLoad denke ich, ich brauche etwas, wo es ist, wo es aussieht

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

Oder etwas in diesem Effekt. Wenn der obige Code tatsächlich funktioniert, würde ich diese Frage nicht schreiben :) Es ist wahrscheinlich nur ein Syntax -Problem, das ich nicht aushören kann, wenn Sie mir bitte helfen könnten, wäre es sehr geschätzt! Vielen Dank

War es hilfreich?

Lösung

Nun, es gibt eine ähnliche Frage hier

Aber für Ihren Fall können Sie es tun wie:

if([[self class] isKindOfClass:[DetailViewController class]]) {
self.view addSubview: onOffSwitch;
}
else 
onOffSwitch. hidden = YES;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top