9

我正在嘗試使用viewpager和片段製作幻燈片,以便我可以爲每個片段加載不同的佈局併爲每個頁面提供不同的功能。FragmentPagerAdapter的問題

我跟着tutorial來完成這個。

上空盤旋public Fragment getItem(int arg0)時,我得到的錯誤:返回類型與FragmentPagerAdapter.getItem(int)

和錯誤#2不兼容:構造FragmentPagerAdapter(FragmentManager)未定義 - >得到這個一個徘徊時super(fm);

package com.example.spui; 

import android.os.Bundle; 
import android.app.Fragment; 
import android.app.FragmentManager; 
import android.support.v4.app.FragmentPagerAdapter; 

public class MyFragmentPagerAdapter extends FragmentPagerAdapter{ 

    final int PAGE_COUNT = 5; 

    /** Constructor of the class */ 
    public MyFragmentPagerAdapter(FragmentManager fm) { 
     super(fm); 
    } 

    /** This method will be invoked when a page is requested to create */ 
    @Override 
    public Fragment getItem(int arg0) { 

     MyFragment myFragment = new MyFragment(); 
     Bundle data = new Bundle(); 
     data.putInt("current_page", arg0+1); 
     myFragment.setArguments(data); 
     return myFragment; 
    } 

    /** Returns the number of pages */ 
    @Override 
    public int getCount() { 
     return PAGE_COUNT; 
    } 
} 

回答

30

您正在使用錯誤的FragmentManager導入。改爲使用android.support.v4.app.FragmentManager

Fragment同樣的問題 - 使用android.support.v4.app.Fragment

注意:如果你正在建立一個API11 +唯一的應用程序,並要使用本機的碎片,那麼你應該不是改變你的FragmentPagerAdapter進口android.support.v13.app.FragmentPagerAdapter

+0

太棒了!感謝您的快速響應!這解決了我的錯誤:D。你能指出我的正確方向,爲每個頁面使用不同的佈局嗎?或者我應該提出一個新的問題,因爲仍然試圖找出一個出來 順便說一句。 「你可以在3分鐘內接受答案」 – mXX 2013-03-14 16:23:10

+0

getItem可以返回你想要的任何片段 - 如果你想在每個頁面上完全不同的功能,只需根據頁碼返回一個不同的片段。 – ianhanniballake 2013-03-14 16:33:05

+0

我在MyFragment或MyFragmentPagerAdapter中執行此操作嗎?我更新了一個新類的問題,所以你可以看到'MyFragment' 支持v13和v4之間有什麼區別? – mXX 2013-03-14 21:22:42

相關問題