인터넷에서 json 데이터를 가져와 listView에 표시하는 ListFragment가 있습니다.이 fragment를 viewPager에서 재사용합니다. 데이터 및 표시를로드합니다. 처음 두 페이지에 있지만 세 번째 페이지에서로드 유지합니다. 대부분의 페이지가 작동하지만 중간에 작동하지 않는 페이지가 있습니다. 이해가 안되는 것은 모든 페이지에서 동일한 조각을 사용하지만 일부 페이지에서는 작동하지 않는다는 것입니다. newInstance를 만들고 URL을 전달하여 데이터를 가져옵니다. 더 많은 코드를 제공하면 시청자가 압도 당해서 충분합니다. ListFragments.Am에서 목록을 가져 와서 표시하는 동안 내가 따라야하는 규칙이 있습니다. 잘못된 것입니다. ?ListPager 내부의 ListFragment는 일부 페이지에 데이터를 표시하지 않으며 일부 페이지에서는 제대로 작동합니다.
내 어댑터 :
public class FragmentPageAdapter extends FragmentPagerAdapter {
public FragmentPageAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position)
{
case 0:
Log.d("Adapter","Case 0 called");
return new LisViewFragment2();
case 1:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=al-jazeera-english&sortBy=top&apiKey=my_key");
case 2:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=associated-press&sortBy=top&apiKey=my_key");
case 3:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=bbc-news&sortBy=top&apiKey=my_key");
case 4:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=cnn&sortBy=top&apiKey=my_key");
case 5:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=google-news&sortBy=top&apiKey=my_key");
case 6:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=independent&sortBy=top&apiKey=my_key");
case 7:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=metro&sortBy=top&apiKey=my_key");
case 8:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=mirror&sortBy=top&apiKey=my_key");
case 9:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=newsweek&sortBy=top&apiKey=my_key");
case 10:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=new-york-magazine&sortBy=top&apiKey=my_key");
case 11:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=reddit-r-all&sortBy=top&apiKey=my_key");
case 12:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=reuters&sortBy=top&apiKey=my_key");
case 13:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=the-guardian-uk&sortBy=top&apiKey=my_key");
case 14:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=the-hindu&sortBy=top&apiKey=my_key");
case 15:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=the-times-of-india&sortBy=top&apiKey=my_key");
case 16:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=the-new-york-times&sortBy=top&apiKey=my_key");
case 17:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=the-telegraph&sortBy=top&apiKey=my_key");
default:
return ListViewFragment.newInstance("https://newsapi.org/v1/articles?source=usa-today&sortBy=top&apiKey=my_key");
}
}
@Override
public int getCount() {
return 19;
}
}
'FragmentStatePagerAdapter'를 사용하는 대신'의 FragmentPagerAdapter'하여 코드를 시도 –