0

class#A で定義された関数を class#B から呼び出すにはどうすればよいですか? Class#B は AsynchTask を拡張し、Web サービスからリモート データをフェッチします。クラス#Bから呼び出そうとしているクラス#A関数は、取得したリモートデータをクラス#Aに送信して表示するために使用されます。

class#A の現在のインスタンスを class#B に渡そうとしてthisいますが、コンテキストを渡すだけなので、関数は認識されません。

私も使用してみstaticましたが、関数が新しいスレッドを実行するため、関数を静的として定義するとコンパイラ エラーが発生します。

私が呼び出そうとしているコードは次のとおりです。

public void test(List<DATA> Data){
        this.Data = Data;
        runOnUiThread(new Runnable() {          

            @Override
            public void run() {
                // TODO Auto-generated method stub
                for(DATA data : MainActivity.this.Data){
                    Toast.makeText(MainActivity.this, data.title, Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
4

4 に答える 4