Problem: I am building an android application where I am using viewpager method to swipe the screens. I need to display the toast message with respect to each screen, for example "msg1" with screen 1, "msg2" with screen 2 and so on. But with my code as below, nothing is displayed: code:
ViewPager viewPager = (ViewPager) findViewById(R.id.view_pager);
ImagePagerAdapter adapter = new ImagePagerAdapter();
viewPager.setAdapter(adapter);
private class ImagePagerAdapter extends PagerAdapter {
private int[] mImages = new int[]{R.drawable.login_screen_1, R.drawable.login_screen_2};
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
Toast.makeText(getApplicationContext(), position, Toast.LENGTH_LONG).show();
}
@Override
public void onPageScrollStateChanged(int state) {
}
private class ImagePagerAdapter extends PagerAdapter {
private int[] mImages = new int[]{R.drawable.login_screen_1, R.drawable.login_screen_2};
@Override
public int getCount() {
return mImages.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((ImageView) object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
Context context = FaceBook.this;
ImageView imageView = new ImageView(context);
// int padding = context.getResources().getDimensionPixelSize(
// R.dimen.padding_medium);
// imageView.setPadding(padding, padding, padding, padding);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
imageView.setImageResource(mImages[position]);
((ViewPager) container).addView(imageView, 0);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView((ImageView) object);
}
}
QUESTION 2
In my app, I am calling an async task on a button click and I am using onpreexecute method to start "progress dialog" and onpostexecute to end the same.
I am getting this error while implementing the above - "View not attached to window manager." Here is my async code -
/**
* Async task class to get json by making HTTP call
*/
private class questionfeed_async extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
pDialog = new ProgressDialog(getActivity());
pDialog.setMessage("Hi "+userName+ "! Loading your question feed ");
pDialog.show();
}
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
}
@Override
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
if (pDialog.isShowing()) {
pDialog.dismiss();
}
}