| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Alter User Registriert seit: Apr 2010 Ort: Deutschland
Beiträge: 128
|
Hi Forum, ich hab in meinem MVC (nach "Moock") ein Model, das ich instanziieren möchte, also z.B. "Auto_1" + "Auto_2". Man soll im Programm zwischen beiden hin-und her schalten können, so dass dann jeweils das gewählte, mit seinen jeweiligen Parametern, angezeigt wird. Ablauf ist ja so: Container MC bauen => Modell erstellen => Views "auf Modell" erstellen... Mal ein bisschen Code, wo alles zusammen läuft: Code: class Auto
{
/*
* constructor
*/
public function Auto (target:MovieClip, specs:Object)
{
//
// the model
//
auto_model = new AutoModel (specs);
//
// the views
//
auto_heightView = new HeightView (auto_model, undefined, target, depth++, 280, 295);
.
.
.
//
// making the views observe the model
//
auto_model.addObserver (...)
.
.
.
}
/*
* M A I N
*/
public static function main (target:MovieClip, models:Object):Object
{
var auto_1:Auto = new Auto (target, models.auto_1);
var auto_2:Auto = new Auto (target, models.auto_2);
}
} - für jede Instanz alle Views anlegen und füllen und dann je nach Modell-Wahl sichtbar machen => doof, weil Views doppelt sind (~15 Views momentan) - im Modell-Konstruktor ein Array anlegen, welches die Parameter der einzelnen Modelle aufnimmt und dann auf diesem Array arbeiten... Beides fühlt sich aber nicht richtig an und, weil die Umstellung einen gewissen Aufwand bedeutet, will ich nicht "rumprobieren"... ![]() Wie löst man sowas? Gruss, T Geändert von twietee (26-07-2010 um 14:40 Uhr) |
| | |
| | #2 (permalink) |
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 515
|
Hat eine Zeit gedauert und ich verstehe auch immernoch nicht ganz, was Dein Problem ist. Eigentlich glaube ich, dass Du nicht willst, dass für jede Instanz von Auto ein kompletter ViewGraph entsteht. Allerdings macht mich dein Code stutzig. In der main() übergibst Du dem Auto sein Modell, aber in der Auto Klasse selber kommt diese nicht an und du erzeugst darin ein neues. Ich löse die Trennung so, dass ein Modell getrennt von der View erstellt wird. Die View hat eine onModelData(data:ModelEvent) Methode und ich verbinde in einer Controller Klasse Model mit View. PHP-Code: Wenn jetzt ein neues Model (anderes Auto) angezeigt werden soll, brauche ich nur das erste Model abzulösen und das neue anzudocken PHP-Code: Wenn ich jetzt, z.b durch die Kontrollerklasse das Model anrege, einmal seinen aktuellen Zustand zu broadcasten, zeigt die im Moment einzige View die neuen Daten von Model2. Passt das zu dem, was Du zur Frage hattest? |
| | |
| | #3 (permalink) |
| Alter User Registriert seit: Apr 2010 Ort: Deutschland
Beiträge: 128
|
Hi Dr. Ache, und vielen Dank für die Antwort ersteinmal! ![]() Mein Problem hast du schon richtig erfasst -- ich möchte einen duplizierten View-Graph vermeiden (hätte ich natürlich auch gleich so ausdrücken können ).Die Möglichkeiten deiner Version hören sich verlockend an. Allerdings gibt's da mehr oder weniger 2 Probleme: 1. ich müsste alles umstricken und das kostet mich gerade zu viel Zeit (das ist das größere Problem) 2. dass das Model dem View lauscht, finde ich irgendwie unrichtig, ich denke da aber wohl zu pragmatisch... Vielen Dank nochmal für deine Antwort, Gruß, T P.S.: die "models" in der main-Methode sind die Auto-Modelle, keine aus dem MVC ist aber leicht irritierend in dem Zusammenhang, ich weiß
|
| | |
| | #7 (permalink) |
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 515
|
Hab meinen Beitrag nochmal durchgelesen. Wo schreibe ich denn, das das Model auf die View hört. Genau andersrum hab ich es gemeint. View wird beim Model als listener angemeldet. Gibt es neue Daten im Model wird die View davon in Kenntnis gesetzt.
|
| | |
| | #8 (permalink) | |
| Alter User Registriert seit: Apr 2010 Ort: Deutschland
Beiträge: 128
| Zitat:
Das größte Problem, das ich gerade sehe, ist das wechseln zwischen den Modellen, weil -- bei nur einem View-Graph -- die Views ja komplett neugezeichnet werden müssen. Ich glaub ich hack da mal was zusammen, das funktioniert -- OMG ![]() Bin aber weiterhin für Vorschläge offen und wirklich interessiert, wie man die Sache "professionell" löst. Hab jetzt schon so eine tolle Grundarchitektur, da wäre schade, wenn die den letzten Feinschliff nicht bekommt! ![]() Danke + Gruß, T | |
| | |
| | #9 (permalink) | |
| Alter User Registriert seit: Apr 2010 Ort: Deutschland
Beiträge: 128
| Zitat:
Code: model.addEventListener(... Bin wohl grad bisschen verwirrt ![]() Gruß, T | |
| | |
| | #11 (permalink) |
| Alter User Registriert seit: Apr 2010 Ort: Deutschland
Beiträge: 128
| UML wäre toll! Gibt's dafür Tools, die meinen Code durchrödeln und das dann ausspucken? Alles andere geht gerade leider nicht, da zu zeitaufwendig! ![]() Auf die Schnelle hab ich jetzt keine solchen Tools gefunden, normalerweise macht man das ja auch anders'rum (erst UML, dann Code )...Danke + Gruß, T P.S.: Das gehört jetzt wahrscheinlich nicht hier her. Aber ich möchte Euch und Eure Hilfsbereitschaft mal explizit loben -- ihr seid unglaublich! |
| | |
| | #12 (permalink) |
| Neuer User Registriert seit: Dec 2005
Beiträge: 99
|
Deine Modelklassen für die Autos hast Du ja scheinbar schon parat. Schreib doch einfach ein weiteres Model (AutoContainer), dass eine Liste deiner aktuellen Autos verwaltet und zudem einen Verweis auf das aktuelle Element. Dann noch einen Controller der den "Zeiger" auf das aktuelle Element schreibt. Eine View observed dann dieses Model und bekommt bescheid wenn sich das aktuelle Element ändert und rendert den eben jenes Element. |
| | |
| | #13 (permalink) |
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 515
| Jetzt wo Du es sagst - ich bin nicht wirklich in vielen Foren unterwegs aber in denen, die ich kenne, findet man nicht so schnell Hilfe, wie hier. Mag an der Masse liegen, oder an der Vielzahl an hilfsbereiten Leuten in dem "Genre" :-) Ich finds auch klasse!
|
| | |
| | #14 (permalink) | ||
| Alter User Registriert seit: Nov 2006 Ort: München
Beiträge: 484
| Zitat:
apparat - Project Hosting on Google Code Zitat:
| ||
| | |
| | #15 (permalink) | |
| Alter User Registriert seit: Apr 2010 Ort: Deutschland
Beiträge: 128
| Zitat:
![]() Gruß, T | |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| gotoAndStop für mehrere Instanzen?? | burn4ever | ActionScript 1 | 1 | 04-03-2008 10:13 |
| AS auf mehrere Instanzen legen | skamarkus | ActionScript 1 | 7 | 27-03-2006 16:31 |
| Colorobjekt für mehrere Instanzen | Phil Hobbes | ActionScript 1 | 14 | 20-04-2003 22:42 |
| mehrere instanzen ansprechen... | matzilla | Flash 4 und Flash 5 | 10 | 31-03-2002 15:29 |
| Mehrere Instanzen ansprechen | christian_10 | ActionScript 1 | 2 | 29-03-2002 03:07 |