Back to page

 Print 

Starling+Feathersでボタン :: NJF Wiki

xpwiki:Starling+Feathersでボタン

Starlingにもボタンクラスがあるのだが、機能的にはFeathersの方が充実しているので実際にはこちらがお勧め。

最低限以下のコードで動く。

var btn:Button = new Button();
btn.addEventListener(Event.TRIGGERED, onTapHandler);
btn.defaultSkin = new Image(assets.getTexture(BTN_IMG_NAME));
btn.defaultIcon = new Image(assets.getTexture(BTN_ICON_NAME));
addChild(btn);
function onTapHandler(e:Event):void{
	trace("tap!");
}

アイコンの代わりにテキストを指定することも可能。

でもこれだと押したとき、マウスが乗ったときが分からないので、たとえば

btn.useHandCursor = true;//マウスオーバーでハンドカーソル
btn.scaleWhenDown = 1.1;//押したときに1.1倍に
btn.scaleWhenHovering = 1.03;//マウスオーバーで1.03倍に

などと指定する。

他にもマウスオーバー、使用不可のボタンの画像自体を変えたい場合は、

hoverIcon
hoverSkin
disabledSkin
disabledIcon
downSkin
downIcon

などのプロパティに画像を指定すると良い。アイコンの細かな位置調整は

iconOffsetX
iconOffsetY

というパラメーターでポイント単位で微調整可能。

モバイルだと画像を多く用意するとメモリを圧迫するので、downSkinを使うよりスケールで対応するのが便利。Imageのcolorプロパティを使ったり半透明画像を重ねたりする方法もある。


Last-modified: 2015-05-31 (Sun) 16:24:01 (JST) (2101d) by njf