2013-03-04 2 views
2

Есть ли способ получить context в классе BaseAdapter с getApplicationContext()?Контекст в базовом классе адаптера

Мне нужно это, потому что я собираюсь загружать изображения с URL-адреса. Здесь я использую context:

Это в классе, который простирается BaseAdapter

ImageLoader imgLoader = new ImageLoader(getApplicationContext()); 
+1

передать его в конструктор пользовательского базового блока – baboo

+0

Вы можете передать контекст с помощью перегруженного конструктора – Waqas

ответ

2

Передайте его в конструкторе при расширении/реализации:

public class MyAdapter extends SomeBaseAdapter{ 
    private final Context mcontext; 

    public MyAdapter(Context c){ 
    mContext = c; 
    } 

} 
+0

Спасибо! Починил это! – 2013-03-04 10:27:10

0

Вы можете либо передать ссылку на Контекст в конструкторе адаптеров и сохранить его или вы можете напрямую ссылаться на него от родителя по методу getView()

public class ToDoListAdapter extends BaseAdapter { 
    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     LayoutInflater inflater = (LayoutInflater) parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    //inflate layout 
    } 
} 
Смежные вопросы