Programmieren Sie Klasse programmatisch in iOS

7

Ich arbeite an einem großen iOS-Projekt, das Design ist nicht so schön, wie ich es gerne hätte, aber ich muss dabei bleiben. (Das Leben kann manchmal eine Hündin sein).

Die Sache ist, dass wir eine Bibliothek haben, die einen Katalog durchsuchen lässt. Sie haben einen Filter, in dem Sie ein bestimmtes Suchkriterium angeben, und Ihnen wird eine Liste angezeigt, in der Sie auf die Elemente klicken können, an denen Sie interessiert sind. Wenn Sie ein Element drücken, können Sie eine detailliertere Beschreibung anzeigen.

Das Unternehmen war eine Arbeit für, verkauft die gleiche Software an viele verschiedene Firmen, die verschiedene Kataloge haben. Die Idee ist, dass die Bibliothek alle Hauptfunktionen hat und das Projekt, das sie verwendet, einige der gegebenen Schnittstellen in irgendeiner Weise erweitern oder vollständig außer Kraft setzen kann.

Um Ihnen ein Beispiel zu geben, stellen Sie sich vor, dass meine Bibliothek 2 Klassen hat, die 2 Ansichten verwalten. Sie wären "FilterViewController" und "DetailsViewControllers". An einigen Stellen des Codes wird diese Klasse instanziiert. Es würde ungefähr so ​​aussehen

Mein Ansatz ist ungefähr so:

Projektseite

%Vor%

Projektseite

%Vor%

Bibliotheksseite

%Vor%

Das Problem bei diesem Ansatz ist, dass ich eigentlich nicht weiß, ob es möglich ist, Objekte programmgesteuert zu instanziieren. Oder zumindest weiß ich nicht wie. Vielleicht benutze ich die falsche Herangehensweise, eine Richtung würde geschätzt werden. Txs im Voraus!

    
Ignacio Oroná 24.11.2011, 16:13
quelle

3 Antworten

14

Um eine Klasse aus einer Zeichenfolge zu erhalten, können Sie diese Funktion verwenden

%Vor%

Um die Klasse der vorhandenen Variablen zu erhalten, rufen Sie einfach class method.

auf %Vor%

Jetzt können Sie eine Instanz von MyClass

erstellen %Vor%     
beryllium 24.11.2011, 16:23
quelle
6

Verwenden Sie

%Vor%

Sie können auch aus einem Klassennamen instanziieren, sollte das für Sie nützlich sein:

%Vor%     
tarmes 24.11.2011 16:22
quelle
5
%Vor%

Schnittstelle + Implementierung:

%Vor%

Ausgabe:

%Vor%     
lorean 24.11.2011 16:26
quelle