java.lang.IllegalStateException: ViewPager has not been bound (Using JakeWharton ViewPager Indicator)
Asked Answered
J

2

5

I have two view pagers in a screen.One ViewPager uses JakeWharton' circleindicator and second one uses TabPage Indicator. I need to download the data from backend using Async call.Once the data is download i should be displaying the data in the viewpagers. Here is the Code snippet of my activity.

   ViewPager pager1;
ViewPager pager2;

public onCreate(){
     //I Set Up ContentView
     //Locate ViewPagers & Indicators
     //pager1 = ...
     //pager2= ...
     //Locate Indicators
     CallAsyncTask().execute();


}
private class CallAsyncTask extends AsynTask{
          doinbackground(){
          //Download Data
          }
          onPostExecute(){
            displayData();

          }

}
private displayData(){
   // Set Up Adapters & Indicators for ViewPagers
}

when i execute this code, i get ViewPager Not Bound Exception. Is there a solution for it. I think a workaround is to setUpContentView inside onPostExecute() method of AsyncTask.But i also need to display progressBars till the data is downloaded. How can i achieve all of this.

Jodijodie answered 4/4, 2014 at 9:57 Comment(1)
#22869385Jodijodie
B
16

I just placed visibility: gone on the TabPageIndicator and when I get the data to display I change the visibility to visible

Blinny answered 14/4, 2014 at 15:27 Comment(1)
yes. the method that was throwing the exception was called onLayout or onMeasure. that's why I set the visibility: gone until I set up the adapter.Blinny
R
2

In my case what i found is that i am not setting the "ViewPager" to "TabPageIndicator". After setting

indicator.setViewPager(pager);

my issue is gone.

Reuben answered 3/7, 2014 at 6:50 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.