我正在构建一个组件,并且需要能够从字体列表中选择字体。我显示了字体列表,但我不确定正确的数据类型是什么或我应该如何设置它。我已经尝试过 String 和 Font,但似乎遇到了错误。
private var _tfFormat:TextFormat;
_tfFormat = new TextFormat();
这将产生 1067:String 类型的隐式强制转换为不相关的 flash.text:Font。
private var _font:Font = null;
_tfFormat.font = font.fontName;
[Inspectable(type="Font Name", name="font", defaultValue="Arial")]
public function get font():Font
{
return _font;
}
public function set font(value:Font):void
{
_font = value;
invalidate();
}
这给了我一个 1065 变量未定义。
private var _font:String = "";
var __cls:Class = getDefinitionByName(font) as Class;
var __fnFont:Font = new __cls() as Font;
_tfFormat.font = __fnFont.fontName;
[Inspectable(type="Font Name", name="font", defaultValue="")]
public function get font():String
{
return _font;
}
public function set font(value:String):void
{
_font = value;
invalidate();
}
我觉得我已经很接近了,而且我忽略了这件事非常容易。任何一双眼睛都将不胜感激。谢谢。