前言:
眾所周知,當我們使用viewpager加載多個布局文件時,尤其是加載多個一樣布局文件時,這些布局中的控件的點擊事件卻監(jiān)聽不到了。
下面提供解決方法:
其實我們加載多個布局那么就應該找到對應布局中的控件,也就是那個List中獲取對應的布局文件,再從這個布局文件中獲取對應的控件,具體在代碼中可以在主頁面中完成,也可以在適配器中完成,這里只給出適配器中的解決:
在PagerAdapter中的instantiateItem方法中,如下直接將我的工程中的部分代碼拷貝出來了,里面還包括當前頁面的點擊監(jiān)聽

pagerAdapter中的代碼
代碼解釋:
viewContainter就是Viewpager對應的子VIEW的一個集合
instantiateItem(View v, int postion){}:這個方法返回的就是你填充的view界面,可以跟listview中的getView()對比理解
在這里寫switch來找到的對應布局,然后在找到對應的控件,再給控件綁定點擊事件。OK.
問題2描述:Viewpager默認第一個頁面不顯示,當滑動到第二個界面再回到第一個界面時,第一個界面才顯示
解決方案:
在onResume()方法中
MyViewPager.setCurrentItem(1);
MyViewPager.setCurrentItem(0);