ViewPager не может загружать изображения лениво с помощью Picasso
у меня естьFragmentActivity
в первой вкладкеTabHost
иFragmentActivity
сам держитViewPager
.
ViewPager
«ssetAdapter()
метод устанавливаетFragmentPagerAdapter
с наборомFragment
s. Цель состоит в том, чтобы иметь смахиваемые изображения на первой панелиTabHost
.
Чтобы проверить это, я загружал кучу изображений, которые я хранил локально в проекте.drawable
каталог.Все работало прекрасно.
После тестирования этой начальной настройки я загружаю кучу URL-адресов изображений с веб-службы REST. Я хочу, чтобы эти изображения лениво загружались вViewPager
и я попытался позвонить Пикассоload()
метод в трех местах:
onCreateView()
методViewPager
«sFragment
s (там же, где я раньше загружал изображения с местногоdrawable
каталог).
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View myFragmentView = inflater.inflate(R.layout.layout_fragment, container, false);
ImageView imageView = (ImageView)getView().findViewById(R.id.fragment_image);
String url = getArguments().getString(IMAGE_RESOURCE_URL);
Context context = getActivity();
Picasso.with(context).load(url).fit().into(imageView);
return myFragmentView;
}
onViewCreated()
методViewPager
«sFragment
s.
@Override
public void onViewCreated(View view, Bundle savedInstanceState){
Context context = getActivity();
String url = getArguments().getString(IMAGE_RESOURCE_URL);
ImageView imageView = (ImageView)view.findViewById(R.id.fragment_image);
Picasso.with(context).load(url).fit().into(imageView);
}
onInstantiateItem()
методFragmentPagerAdapter
.
@Override
public Object instantiateItem(ViewGroup container, int position) {
View v = inflater.inflate(R.layout.layout_fragment, container, false);
Context context = Tab1Activity.this;
String url = getItem(position).getArguments().getString("IMAGE_RESOURCE_URL");
ImageView imageView = (ImageView)v.findViewById(R.id.fragment_image);
Picasso.with(context).load(url).fit().into(imageView);
return v;
}
Ни один из этих методов не сработал. Я знаю, что это не проблема с Пикассо, потому что на днях я пытался использовать Пикассо вListView
и это сработало как шарм. Что я делаю неправильно ?