我越來越位置從pageradapter傳遞(以asyctask)Viewpager:獲取當前項目位置
instantiateItem(查看收集,詮釋POS){.execute(POS);}
但當我刷到上一頁時,它的位置錯誤,我怎樣才能得到正確的以前的位置?
也許我可以使用ViewPager getCurrentItem()檢索當前頁面的索引,但是如何將它與我的代碼一起使用?
public class QuestionPagerAdapter extends PagerAdapter{
public QuestionPagerAdapter(){
super();
}
@Override
public int getCount() {
int qcount = QuestionPagerAdapter.q.getQuestionCount();
return qcount;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((View) object);
}
@Override
public Object instantiateItem(View collection, int pos) {
LayoutInflater inflater = (LayoutInflater) collection.getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View page = inflater.inflate(R.layout.page_quiz, null);
TextView tv = (TextView)page.findViewById(R.id.questionText);
QuizFetchTask fft = new QuizFetchTask(tv);
fft.execute(pos);
((ViewPager) collection).addView(page, 0);
return page;
}
@Override
public void destroyItem(View collection, int position, Object view) {
//Util.Log("destroying" + position);
((ViewPager) collection).removeView((View) view);
}
}
我不太明白你在做什麼,爲什麼'getCurrentItem()'爲你工作? – FoamyGuy
它適用於我的MainActivity。但我想在我的asynctask課程中使用它。那麼如何在asynctask文件中創建一個新的適配器。在MainActivity中,我使用asynctask創建了oncreate:where? – metemet06
如果我在postexecute(etc)中使用它,它會創建適配器每個頁面swips? – metemet06