В моей библиотеке есть мувиклип с именем mcLeaderboarditem.Я создал класс для управления текстовыми полями.
Самый простой способ - создать дочерний элемент класса и управлять свойствами содержимого с помощью синтаксиса с точкой следующим образом (documentclass):
var leaderItem:mcLeaderboardItem = new mcLeaderboardItem();
leaderItem.lblRank.text = "2nd";
addChild(leaderItem);
Это облегчит мне задачу,но я хочу управлять данными в классе, чтобы я мог добавить дополнительный текст к нему (префикс / суффикс / манипуляции).Я создал несколько приватных свойств: rank, displayname и score и изменил их, не используя documentClass с помощью методов получения и установки в mcLeaderboardItem.Если я изменяю lblRank.text в классе и отслеживаю его, я вижу, что он изменил lblRankt.text, но с того момента, как компилятор выходит из класса, он снова принимает значение метки по умолчанию в мувиклипе.Если только я не выберу решение в блоке кода выше.Код класса mcLeaderboardItem:
package com.cleversprite.memorygame.ui
{
import flash.display.MovieClip;
public class mcLeaderboardItem extends MovieClip
{
//VARIABLES
//------------------------------------------------
private var _rank:int;
private var _displayname:String;
private var _score:int;
//PROPERTIES
//------------------------------------------------
public function get rank():int
{
return _rank;
}
public function set rank(v:int):void
{
_rank = v;
}
public function get displayname():String
{
return _displayname;
}
public function set displayname(v:String):void
{
_displayname = v;
}
public function get score():int
{
return _score;
}
public function set score(v:int):void
{
_score = v;
}
//CONSTRUCTOR
//------------------------------------------------
public function mcLeaderboardItem()
{
super();
init();
}
public function init():void
{
lblRank.text = String(_rank);
lblDisplayname.text= _displayname;
lblScore.text= String(_score);
}
}
Кто-нибудь видит, что я делаю неправильно?Вероятно, это будет что-то глупое из-за усталости.Или есть другой способ сделать то, что я пытаюсь сделать?
Спасибо заранее.