Reputation: 577
class GoogleMusicAdapter extends TestFragmentAdapter implements TitleProvider {
public GoogleMusicAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
if(position == 0)
return MyClass.newInstance();
else if(position == 1)
return MyClass.newInstance();
else
return MyClass.newInstance();
}
@Override
public int getCount() {
return SampleTabsStyled.CONTENT.length;
}
@Override
public String getTitle(int position) {
return SampleTabsStyled.CONTENT[position % SampleTabsStyled.CONTENT.length];
}
}
I have a AsyncTask in my MyClass class.I use this GoogleMusicAdapter class in my viewpager.Whenever i change page to another it runs asynctask one more time but i don't want it.It must be run on start and mustn't called one more time.How can i do this?
Upvotes: 1
Views: 610
Reputation: 8176
Make it a singleton?
private static class MyAsyncTask extends AsyncTask<Void,Void,Void> {
private MyAsyncTask mInstance;
public static boolean executeIfNotCreated() {
if(mInstance == null) {
mInstance = new MyAsyncTask();
mInstance.execute();
return true;
}
return false;
}
...
}
Upvotes: 2