У меня есть два файла компонентов MXML и я пытаюсь работать с ними как с классами. Один из них имеет простую функцию:
GUIFriend.mxml
<mx:Script>
<![CDATA[
public function createName(f:Friend) {
return 'friendProfile: ' + f.uid;
}
]]>
</mx:Script>
А другой пытается его использовать:
GUIFriendContainer.mxml
<mx:Script>
<![CDATA[
import GUIFriend;
public function getFriendProfile(f:Friend):GUIFriend {
var result:DisplayObject = getChildByName(GUIFriend.createName(f));
if (result is GUIFriend) {
return result;
} else {
// TODO: throw error
return null;
}
}
]]>
</mx:Script>
Но в строке, которая ссылается на функцию createName, я получаю две ошибки:
- вызов возможно неопределенного метода
createName через ссылку с
статический тип Class. - (обновление) Я забыл сделать метод статическим.
- неявное принуждение
значения со статическим типом
flash.display: DisplayObject для
возможно не связанный тип GUIFriend.
Но я не вижу разумной причины для этого. Что не так с моим кодом?