Flex 4 ベータ版を使用していますが、外部 CSS をロードする機能が壊れているようです。以下のコードを実行すると、スタイリングがまったく表示されません。私は何かを逃しましたか?
コードは次のとおりです。
パッケージ コンポーネント { import flash.events.Event; flash.net.URLLoader をインポートします。flash.net.URLRequest をインポートします。flash.text.StyleSheet をインポートします。
import mx.controls.Label;
import spark.components.Panel;
public class MainPanel extends Panel
{
private var mainLabel:Label = new Label();
private var label2:Label = new Label();
public function MainPanel()
{
super();
var cssUrl:URLRequest = new URLRequest("css/style.css");
var cssLoader:URLLoader = new URLLoader();
cssLoader.addEventListener(Event.COMPLETE, cssLoaded);
cssLoader.load(cssUrl);
}
function cssLoaded(event:Event):void {
var css:StyleSheet = new StyleSheet();
css.parseCSS(URLLoader(event.target).data);
mainLabel.styleSheet = css;
mainLabel.htmlText = "Main Label";
mainLabel.horizontalCenter = 0;
mainLabel.verticalCenter = -350;
mainLabel.setStyle("styleName", "h1");
addElement(mainLabel);
label2.htmlText="Sub-Label";
label2.horizontalCenter="0";
label2.verticalCenter="-300";
addElement(label2);
}
}
}
css/style.css
.h1 { color:#ffe145; フォントファミリー: Verdana; フォントサイズ: 36; フォント スタイル: 斜体; フォントの太さ: 太字; }
このコードをロードします (s:Application タグは、stackoverflow ソフトウェアによってドロップされます):
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<custom:MainPanel horizontalCenter="0" verticalCenter="0"/>