關於使用ViewPager和LayoutInflater的出現問題

來源:互聯網
上載者:User

問題如下:
1. ViewPager應該怎麼配?(仿的功能引導頁)

 *  需要一個布局,布局裡面有android.support.v4.view.ViewPager,還有幾個代表點(用XML實現drawable,目的是切換不同顏色的點)的ImageView

 *  需要自訂配接器繼承PagerAdapter,實現getCount, isViewFromObject, destroyItem, instantiateItem這幾個方法,傳入的是List<View> pageViews

 *  Activity裡面定義並擷取List<View>(裝page view,每個page都是一個XML布局,需要用LayoutInflater來擷取), List<ImageView>(裝dot view),擷取ViewPager,執行個體化Adapter,viewPager.setAdapter,viewPager.setOnPageChangeListener(這個要在onPageSelected實現改變點顏色的功能)

 


2. LayoutInflater明明沒有用錯,XML也沒錯,為什麼還報android.view.InflateException: Binary XML file line #8: Error inflating class的錯誤呢?

報錯的地方是這裡:


[java]
private List<View> getViews(){ 
    LayoutInflater inflater = this.getLayoutInflater();//反射  
    List<View> views = new ArrayList<View>(); 
    View view1 = inflater.inflate(R.layout.intro_page_one, null);//這裡報錯  
    views.add(view1); 
    View view2 = inflater.inflate(R.layout.intro_page_two, null); 
    views.add(view2); 
     
    return views; 

 private List<View> getViews(){
  LayoutInflater inflater = this.getLayoutInflater();//反射
  List<View> views = new ArrayList<View>();
  View view1 = inflater.inflate(R.layout.intro_page_one, null);//這裡報錯
  views.add(view1);
  View view2 = inflater.inflate(R.layout.intro_page_two, null);
  views.add(view2);
  
  return views;
 }用了三種方法擷取LayoutInflater,結果還是一樣  #擷取LayoutInflater三種方式#


其實,後面還有報OutOfMemoryError,怎麼可能!我就換了幾張圖(原來的圖都是700K,換30K的圖),結果顯示正常!!!!

調用這個反射,是因為要擷取的Layout不是setContentView裡面的那個Layout。

 


3. 如何?第一次安裝APP的時候,進入歡迎頁面,停頓3秒,進入引導頁,點擊確定,進入APP;

     之後啟動APP,進入歡迎頁面,不會進入引導頁,直接進入APP;

     在APP的某個按鈕點擊協助,會重啟APP,進入歡迎頁面,進入引導頁,進入APP?

 

相關關鍵詞:
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.