0

次のクラスに、別のクラスから取得したい情報を定義してもらいます。getstring()が機能するように、コンテキストを使用しました。

public class Util{

public ArrayList<RecetaBean> getRellenas(Context con) {
ArrayList<RecetaBean> MiLista = new ArrayList<RecetaBean>();

RecetaBean receta1 = new RecetaBean();
String ingrediente1[] = {         con.getString(R.string.app_name), con.getString(R.string.app_name),
};
receta1.setIngredientesLista(ingrediente1);

MiLista.add(receta1);
MiLista.add(receta1);
MiLista.add(receta1);


return MiLista;

}

次に、別のクラス拡張アクティビティで、OnListItemClick()でこのクラスを呼び出し、完全に機能します。しかし、リストの代わりにグリッドビューを課金する別のクラスでは、OnItemClicklistener()を使用して機能しません。これは、次のコードです。

gridView.setOnItemClickListener(new OnItemClickListener() {        
    public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
        Util u = new Util();
        ArrayList<RecetaBean> Recetas = u.getRellenas();

エラーは次のとおりです。

タイプUtilのメソッドgetRellenas(Context)は、引数には適用できません(new AdapterView.OnItemClickListener(){})

それを実装して修正する方法がわかりません!ありがとう!

4

1 に答える 1

0

あなたの中で

Utils.getRellenas(Context con)

パラメータとしてコンテキストが必要です。このように解決できるのではないかと思います

ArrayList<RecetaBean> Recetas = u.getRellenas(MyActivityName.this);

「MyActivityName」を、含まれているアクティビティの名前に置き換えます。

于 2012-08-28T14:49:36.950 に答える