Ako získať prístup k detským vlastnostiam / komponentom z rodičovskej metódy - actionscript-3, flex, dedičnosť, rodič-dieťa

Rozvíjam aplikáciu v ActionScript (Flex Mobile) a mám problém s vzťahom rodič-dieťa ClassB ktorý zdedí z ClassA a jednu z metód Classa potrebujú prístup k komponentom ClassB, Táto metóda nemôže pristupovať k zložke / vlastníctve / premennej, ktorá je nastavená ako chránený alebo súkromné, Nechcem to nastaviť ako verejnosť, hoci by to vyriešila.

Tu je materský kód:

public class BaseView extends View
{
...
protected function configureComponents(componentName:String):void
{
...
var service:HTTPService = this[componentControler.Id] as  HTTPService;
...
}
...
}

A tu je detský kód:

public class Contacts extends BaseView
{
...
protected var callListService:HTTPService;

override protected function createChildren():void
{
...
super.createChildren();
...
callListService = new HTTPService();
configureComponents("callListService");
}
...
}

Predchádzajúca je len vzorka toho, čo mám, ale je podstatnou súčasťou toho, čo potrebujem. Tiež, keď spustím kód, dostanem nasledujúcu chybu:

Chyba # 1069: Vlastnosť callListService sa nenašla na stránke views.home.Contact a neexistuje žiadna predvolená hodnota.

Dúfam, že mi môžete pomôcť s touto otázkou.

Vopred ďakujem,

Sebastián

odpovede:

1 pre odpoveď č. 1

Nie je to dobrá prax prístupu k dieťaťupremenné od rodiča, v takých prípadoch, ktoré musíte urobiť, pravdepodobne najlepšou voľbou by bolo definovať premennú v nadradenej triede a potom vytvoriť inštanciu na dieťa. Implementácia vecí takým spôsobom umožňuje, že rodič má jednoduchý prístup k inštancii iného dieťaťa.


Najpopulárnejší