6

ActionBarSherlock 및 ViewPagerIndicator 라이브러리를 사용하여 슬라이딩 효과 및 작업 표시 줄을 구현합니다. 결과적으로 여러 Fragments를 스 와이프 할 수 있지만 표시기 제목은 표시되지 않습니다.ViewPagerIndicator에 제목 텍스트가 표시되지 않습니다.

Captured Screen

여기에 여기에 내가 ViewPagerFragmentAdapter에서 getPageTitle (INT)로 인 getTitle (INT 위치)을 변경하여 문제를 해결 한 내 어댑터

public static class ViewPagerFragmentAdapter extends FragmentPagerAdapter implements TitleProvider { 

    ArrayList<Fragment> fragments = new ArrayList<Fragment>(); 
    ArrayList<String> titles = new ArrayList<String>(); 

    public ViewPagerFragmentAdapter(FragmentManager fm) { 
     super(fm); 
     fragments.add(new eventInvitedFragment()); 
     titles.add("Invited"); 
     fragments.add(new eventAllFragment()); 
     titles.add("all"); 
     fragments.add(new eventParticipatedFragment()); 
     titles.add("participated"); 
    } 


    @Override 
    public Fragment getItem(int position) { 
     return fragments.get(position); 
    } 

    @Override 
    public int getCount() { 
     return fragments.size(); 
    } 

    @Override 
    public String getTitle(int position) { 
     return titles.get(position); 
    } 
} 

답변

12

의 내 FragmentActivity

public class eventActivity extends SherlockFragmentActivity { 
    ViewPagerFragmentAdapter mAdapter; 
    ViewPager mPager; 
    PageIndicator mIndicator; 

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.event_layout); 

    ActionBar actionBar = getSupportActionBar(); 
    actionBar.setDisplayHomeAsUpEnabled(true); 
    actionBar.setDisplayShowTitleEnabled(false); 
    actionBar.setDisplayUseLogoEnabled(true); 

    mAdapter = new ViewPagerFragmentAdapter(getSupportFragmentManager()); 
    mPager = (ViewPager)findViewById(R.id.pager); 
    mPager.setAdapter(mAdapter); 
    mIndicator = (TitlePageIndicator)findViewById(R.id.indicator); 
    mIndicator.setViewPager(mPager); 
    mIndicator.setCurrentItem(1); 

} 
    ...... 

입니다. ViewPagerIndicator ChangLog는 다음과 같은 설명이 있습니다

제목 표시 어댑터 콜백 이제 지원 라이브러리의 R6 버전에 도입 된 표준 getPageTitle (int) 메소드를 사용합니다.

+1

솔루션을 게시하여 주셔서 감사합니다. 그것은 나를 도왔다. – Seth

+2

getPageTitle (int) 메서드를 사용하여 제목을 반환하지만 문제가 해결되지 않았습니다. 도와주세요. –

+0

@NguyenMinhBinh 'tabLayout.setupWithViewPager (mViewPager);가 누락 되었습니까? ? 이것은 탭이 표시되지 않는 이유 중 하나입니다. –

관련 문제