在activity_main.xml中写布局代码
<android
.support.v4
.view.ViewPager
android:layout_width =
"match_parent"
android:layout_height =
"match_parent"
android:id=
"@+id/vp"
>
<android
.support.v4
.view.PagerTabStrip
android:id=
"@+id/pager_tab_strip"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"top"
android:background=
"@color/tab_background"
android:textColor=
"@color/tab_text"
android:scrollIndicators=
"left"
android:paddingTop=
"1dp"
android:paddingBottom=
"2dp" />
</android
.support.v4
.view.ViewPager>
状态栏标签名称(在strings.xml 写个string-array数组)
<
string-array
name=
"tab_names">
<
item>首页</
item>
<
item>应用</
item>
<
item>游戏</
item>
<
item>专题</
item>
<
item>分类</
item>
<
item>排行</
item>
</
string-array>
在mainActivity中初始化ViewPager、pagerTabStrip
全局成员变量
private ViewPager mViewPager;
private PagerTabStrip mPagerTabStrip;
private String[] tabNames;
初始化视图
setContentView(R
.layout.activity_main)
tabNames = UIutil
.getStringArray(R
.array.tab_names)
mViewPager = (ViewPager) findViewById(R
.id.vp)
FragmentManager fm = getSupportFragmentManager()
mViewPager
.setAdapter(new MainAdapter(fm))
mPagerTabStrip = (PagerTabStrip) findViewById(R
.id.pager_tab_strip)
mPagerTabStrip
.setTabIndicatorColor(getResources()
.getColor(R
.color.tab_indicator))
写内部类mainAdapter继承FragmentPagerStateAdapter切换Fragment
private class MainAdapter extends FragmentStatePagerAdapter {
public MainAdapter(FragmentManager fragmentManager) {
super(fragmentManager);
}
@Override
public Fragment
getItem(
int position) {
switch(position){
case 0 :
return new HomeFragment();
case 1 :
return new AppFragment();
case 2 :
return new GameFragment();
case 3 :
return new SubjectFragment();
case 4 :
return new CategoryFragment();
case 5 :
return new TopFragment();
default :
return null;
}
}
@Override
public int getCount() {
return tabNames.length;
}
@Override
public CharSequence
getPageTitle(
int position) {
return tabNames[position];
}
}
转载请注明原文地址: https://ju.6miu.com/read-971197.html