2014-04-04 4 views
1

FragmentPagerAdapter에서 getItem (int index)에서 FragmentActivity를 반환하려고합니다. 나는 FragmentActivity를 사용하여 탭에리스트 뷰를 구현했다. 이 문제가 해결 되었습니까? 개발자에 준 getItem() m 번째 문서 당으로FragmentPagerAdapter의 Android getItem이 FragmentActivity를 반환 할 수 없습니다.

@Override 
public android.support.v4.app.Fragment getItem(int index) { 

    switch (index) { 
    case 0: 
     // Top Rated fragment activity 
     return new TopRatedFragment(); 
    case 1: 
     // Games fragment activity 
     return null; //new GamesFragment(); 
    case 2: 
     // Movies fragment activity 
     return null;//new MoviesFragment(); 
    } 

    return null; 
} 

답변

0

, FragmentActivity를 retuen 할 apssoble 없습니다.

abstract Fragment getItem(int position) 
Return the Fragment associated with a specified position. 
0

FragmentPagerAdapter의 getItem() 메소드는 FragmentActivity를 반환하지 않으며 반환 할 수 없습니다. FragmentPagerAdapter의 주요 목적은 ViewPager의 다양한 페이지를 관리하는 것입니다. 다음과 같이 ViewPager 탭에서 목록보기 표시하려면 FragmentPagerAdapter를 확장 할 수

public class MyCustomAdapter extends FragmentPagerAdapter { 
    private ArrayList<String> mPages; 

    public MyCustomAdapter(FragmentManager fm, ArrayList<String> viewPagerPageItems) { 
     super(fm); 
     mPages = viewPagerPageItems; 

    } 

    @Override 
    public int getCount() { 
     return mPages.size(); 
    } 
    @Override 
    public Fragment getItem(int viewPagerTabPosition) { 
     switch (viewPagerTabPosition) { 
      case 0: 
       // this fragment should extend ListFragment, where you could call 
       // getListView() in the onCreate() or onActivityCreated() method. 
       // to inflate your list 
       return TopRatedListFragment.newInstance(mPages.get(position)); 
      case 1: 

      case 2: 
       break; 
    } 

     return fragment; 
    } 
} 

ListFragment 구조와 위해서, newInstance() 팩토리 메소드는 접근 방식은 here을 설명 따른다.

관련 문제