I am new to this android and java.
My viewpager can now move my entire xml layout, but I donβt know how to access the element in them.
I tried using Button mybutton = (Button) findViewById (R.layout.result)
and then set onClickListener
to mybutton, but then it was forced to close every time I run it.
Here is my code:
public class main extends Activity { private ViewPager myviewpager; private ViewPagerAdapter myviewpageradapter; private static int NUM_AWESOME_VIEWS = 12; Button button_1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); myviewpageradapter = new ViewPagerAdapter(); myviewpager = (ViewPager) findViewById(R.id.myviewpager); myviewpager.setAdapter(myviewpageradapter); button_1 = (Button) myviewpager.findViewById(R.id.first_button); button_1.setOnClickListener(new OnClickListener() { public void onClick(View v) { finish(); } }); } private class ViewPagerAdapter extends PagerAdapter { @Override public int getCount() { return NUM_AWESOME_VIEWS; } @Override public Object instantiateItem(View collection, int position) { LayoutInflater layoutinflater = getLayoutInflater(); View view; view = layoutinflater.inflate(R.layout.page1, null); switch (position) { case 0 : view = layoutinflater.inflate(R.layout.page1, null); break; case 1 : view = layoutinflater.inflate(R.layout.page2, null); break; case 2 : view = layoutinflater.inflate(R.layout.page3, null); break; case 3 : view = layoutinflater.inflate(R.layout.page4, null); break; case 4 : view = layoutinflater.inflate(R.layout.page5, null); break; case 5 : view = layoutinflater.inflate(R.layout.page6, null); break; case 6 : view = layoutinflater.inflate(R.layout.page7, null); break; case 7 : view = layoutinflater.inflate(R.layout.page8, null); break; case 8 : view = layoutinflater.inflate(R.layout.page9, null); break; case 9 : view = layoutinflater.inflate(R.layout.page10, null); break; case 10 : view = layoutinflater.inflate(R.layout.page11, null); break; case 11 : view = layoutinflater.inflate(R.layout.result, null);break; } ((ViewPager) collection).addView(view,0); return view; } @Override public void destroyItem(View collection, int position, Object view) { ((ViewPager) collection).removeView((View) view); } @Override public boolean isViewFromObject(View view, Object object) { return view==((View)object); } @Override public void finishUpdate(View arg0) {} @Override public void restoreState(Parcelable arg0, ClassLoader arg1) {} @Override public Parcelable saveState() { return null; } @Override public void startUpdate(View arg0) {} }
source share