2012-08-28 2 views
0

У меня есть следующий класс define с некоторой информацией, которую я бы хотел поймать из другой. Я использовал контекст так GetString() может работать:Контекст getstring с onitemclicklistener

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() и работает идеально. Но в другом классе, который взимать GridView вместо списка я использую 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(); 

Ошибка является:

Метод getRellenas (Context) в типе Util не применим для аргументов (новый AdapterView.OnItemClickListener() {})

Я не знаю, как реализовать это и исправить! Благодаря!

ответ

0

В вашем

Utils.getRellenas(Context con) 

вы ожидаете контекст в качестве параметра. Я думаю, что это может быть решена как этот

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

Где вы заменить «MyActivityName» с названием вашей содержащей деятельности.

+0

спасибо !!! это работает!! – Txispas