2016-05-10 12 views
0

におけるジェネリックパラメータでAndroidのクラスを拡張します。は私が<strong>NativeScript 2.0</strong>を使用していると私は<strong>汎用パラメータ</strong>が含まれています</strong><strong><a href="http://developer.android.com/reference/android/os/AsyncTask.html" rel="nofollow">AsyncTask</a>のようなAndroidのクラスの拡張を作成したいと思いますNativeScript

私はクラスまたはインタフェースの独自の実装を作成するために、extend()メソッドを使用することができることを知っている:

var myRunnable = java.lang.Runnable.extend({ 
    action: null, 

    run: function() { 
     this.action(); 
    } 
}); 

しかし、どのように、私は「純粋な」JavaScriptでジェネリッククラス/インタフェースのためにこれを行うことができますか?

答えて

1

あなたは、同じ技術を使用して、任意のインタフェース/クラスを拡張することができるはずです。最悪の場合、オブジェクトを拡張することができます。この時点で私の知る限りでは、JS側からインターフェース/クラスを作成することはできません。なぜなら、Java側では、シグネチャが正しいように基にするために何か必要があるからです。


ただし、あなたの例に基づいています。 JavaScriptでスレッドまたは実行可能ファイルを作成しようとしている場合は、結果は現在恐ろしく失敗するでしょう。 NativeScriptは現在単一のスレッドであり、アンドロイドにJSを実行中にJSにジャンプしようとすると、あなたの友人ではないと言うことができます。 :-)

feature requestがあると明らかにこれは、次の大きなプロジェクトは、2.00がリリースされていることになりました。近い将来、糸が見えるはずです。追加のJSスレッドにアクセスすることができるNativeScript-webworkersというプラグイン(免責事項、私は著者です)がありますが、JSスレッドはNSのようにOSとやりとりする能力を持っていません。スレッド。