2017-11-09 15 views
1

私はhaxeとhaxeflixelでコーディングしていますが、ボタンのAPIを見たときに2つの異なるタイプがあることがわかりました。 http://api.haxeflixel.com/flixel/ui/FlxButton.html、 私はオンラインの例を見たとき、彼らはFlxTypedButton <T>とFlaxButtonがHaxeとHaxeflixelの違い

var button:FlxButton = new FlxButton(50, 50, "Click here", OnClickButton); 
    add(button); 

としてボタンを宣言したが、typedbuttonとボタンの違いは何ですが? "タイプされた"接頭辞はどういう意味ですか?

(また、スプライトのボタンについての特別なものです。http://api.haxeflixel.com/flixel/ui/FlxSpriteButton.html

してくださいとお願いします。

答えて

0

ドキュメントとソースを調べるだけで、これは私が得ているものです。FlxButtonは最も使いやすいものです。そのために最も頻繁に使用されています。あなたが必要とするのは、文字列、位置、コールバックだけです。最小の入力量が必要です。

FlxTypedButtonは、実際にはFlxButtonの親クラスです。それはFlxButtonに存在する多くの機能を持っているが、それはまたtype parameterがあります

class FlxTypedButton<T:FlxSprite> extends FlxSprite implements IFlxInput 
{ 
    /** 
    * The label that appears on the button. Can be any `FlxSprite`. 
    */ 
    public var label(default, set):T; 

    // The rest of the class... 
} 

これはFlxTypedButtonのラベルは任意の型であるラベルを持つことができることを意味し、継承するオブジェクト/クラスへconstrainedFlxSpriteFlxButtonの場合、それはFlxTextオブジェクトです。

FlxSpriteButtonは、FlxButtonとほぼ同じですが、FlxTextの代わりにFlxSpriteにバインドされています。それが本当にテーブルにもたらす唯一のユニークなことは、createTextLabelの機能です。なぜ私はそれが別のクラスなのか分かりません。