[英]Failed to change custom actionbar background color in android
我正在創建一個android應用程序,其中在一項活動中我借助actionbar顯示了選項卡,因此我必須更改actionbar背景色。 但是,每當我嘗試更改背景顏色時,它將顯示白色背景或黑色背景。 那么,如何修改操作欄以更改其背景顏色?
以下是我的活動代碼:-
public class SavedRecord extends FragmentActivity implements ActionBar.TabListener{
private ActionBar actionBar;
private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
String[] tabs = {"Audio","Video"};
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.saved_record);
//initialization
actionBar = getActionBar();
viewPager = (ViewPager) findViewById(R.id.view_pager);
mAdapter = new TabsPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(mAdapter);
actionBar.setHomeButtonEnabled(false);
actionBar.setIcon(null);
actionBar.setDisplayUseLogoEnabled(false);
actionBar.setTitle("Saved Record");
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
ColorDrawable colorDrawable = new ColorDrawable(Color.parseColor("#ff7043"));
actionBar.setStackedBackgroundDrawable(colorDrawable);
for (String tab_name:tabs){
actionBar.addTab(actionBar.newTab().setText(tab_name).setTabListener(this));
}
viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
actionBar.setSelectedNavigationItem(position);
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
}
@Override
public void onTabSelected(ActionBar.Tab tab, android.app.FragmentTransaction ft) {
viewPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(ActionBar.Tab tab, android.app.FragmentTransaction ft) {
}
@Override
public void onTabReselected(ActionBar.Tab tab, android.app.FragmentTransaction ft) {
}
}
活動的屏幕截圖:-
我假設您正在使用“常規” ActionBar。
嘗試通過導入來使用SupportActionBar
import android.support.v7.app.ActionBar;
並打電話
actionBar = getSupportActionBar();
我認為這應該可以解決您的問題。
嘗試更改應用程序的使用風格
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:actionBarStyle">@style/ActionBarStyle</item>
</style>
<style name="ActionBarStyle" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">/*your custom color*/</item>
</style>
</resources>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.