Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何更改选项卡片段(Viewpager)中选项卡栏的颜色_Android_Android Layout_Android Fragments_Android Viewpager - Fatal编程技术网

Android 如何更改选项卡片段(Viewpager)中选项卡栏的颜色

Android 如何更改选项卡片段(Viewpager)中选项卡栏的颜色,android,android-layout,android-fragments,android-viewpager,Android,Android Layout,Android Fragments,Android Viewpager,我试了很多次,但都不行。 我试图在MainActivity中更改actionBar,但TabBar没有更改,因此我不知道如何更改它 这是我的代码: 维护活动 public class MainActivity extends FragmentActivity implements ActionBar.TabListener { private ViewPager viewPager; private ActionBar actionBar; private TabsPagerAdapt

我试了很多次,但都不行。 我试图在MainActivity中更改actionBar,但TabBar没有更改,因此我不知道如何更改它

这是我的代码: 维护活动

public class MainActivity extends FragmentActivity implements
    ActionBar.TabListener {

private ViewPager viewPager;
private ActionBar actionBar;
private TabsPagerAdapter mAdapter;

private String[] tabs = { "Bài Hát", "Yêu Thích"};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ActionBar ac = getActionBar();
    ac.setBackgroundDrawable(new ColorDrawable(Color.rgb(72, 209, 204)));
    //ac.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#E64260")));


    viewPager = (ViewPager) findViewById(R.id.pager);
    actionBar = getActionBar();

    mAdapter = new TabsPagerAdapter(getSupportFragmentManager());
    viewPager.setAdapter(mAdapter);
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    for (String tab_name : tabs) {
        actionBar.addTab(actionBar.newTab().setText(tab_name)
                .setTabListener(this));
    }

    viewPager.setOnPageChangeListener(new OnPageChangeListener() {

        @Override
        public void onPageSelected(int position) {
            actionBar.setSelectedNavigationItem(position);
            if (position == 1) {
                TabYeuThich frag = (TabYeuThich) mAdapter
                        .getFragmentTabYeuThich(1);
                frag.resetPage();
            } else {
                TabBaiHat frag = (TabBaiHat) mAdapter
                        .getFragmentTabBaiHat(0);
                frag.resetPage();
            }
        }

        @Override
        public void onPageScrolled(int arg0, float arg1, int arg2) {

        }

        @Override
        public void onPageScrollStateChanged(int arg0) {

        }
    });
}

@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
    // TODO Auto-generated method stub

}

@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
    // TODO Auto-generated method stub
    viewPager.setCurrentItem(tab.getPosition());

}

@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
    // TODO Auto-generated method stub

}
这是一个类:TabsPagerAdapter

public class TabsPagerAdapter extends FragmentPagerAdapter {

FragmentManager fm;
TabYeuThich fragYeuThich;
TabBaiHat fragBaiHat;

public TabsPagerAdapter(FragmentManager fm) {
    super(fm);
    // TODO Auto-generated constructor stub
    this.fm = fm;
}

@Override
public Fragment getItem(int index) {
    // TODO Auto-generated method stub
    switch (index) {
    case 0:
        fragBaiHat = new TabBaiHat();
        return fragBaiHat;
    case 1:
        fragYeuThich = new TabYeuThich();
        return fragYeuThich;
    }

    return null;
}

@Override
public int getCount() {
    // TODO Auto-generated method stub
    return 2;
}

public Fragment getFragmentTabYeuThich(int post) {

    return fragYeuThich;

}

public Fragment getFragmentTabBaiHat(int post) {

    return fragBaiHat;

}

请帮帮我!谢谢大家

我通常从themes.xml设置操作栏 我建议您继续学习这两个教程


最好在谷歌上搜索。[URL=Hi you,我可以更改actionBar的颜色,但使用TabBar我无法更改!你可以在我添加到下面评论的图像中看到它question@tranminh您可以按进度设置颜色,您可以尝试从xml文件中执行此操作,如上面的教程所示吗?