2016-03-25 17 views
2

Çok Novice Android Programmer burada. Ana faaliyetimi yaptığım ve kullanıcının bir seçeneği tıkladığında yeni bir etkinliğin açılacağı bu küçük programım var. Her farklı etkinlik için üst araç çubuğunun/actionbarın rengini değiştirmeye çalışıyorum. Ben Android API 15. Benim aktivitelerimde araç çubukları var ama XML'de gösterilmiyor.

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     getActionBar().setBackgroundDrawable(
       getResources().getDrawable(R.drawable.gradient)); 

, onCreate() yönteminde etkinlik sınıfı içinde Java kodu ile rengini değiştirerek denedim ama benim aktivite geçmek istiyorum her programı her zaman çökme.

Etkinliğimin XML dosyasına baktım ve araç çubuğu/işlem kodu herhangi bir yerde görünmüyor, ancak ana etkinliğim olan app_bar_main.xml. Aktivite için XML dosyasında görünmüyorsa, eylem çubuğunda neden harekete geçtiğini merak ediyorum. Yeni eklenen ana olmayan etkinlikler için actionbarın rengi nasıl değiştirilir?

cevap

0

Sanırım uygulama temasını aksiyon çubuğu ile kullanıyorsunuz. res/styles.xml yılında NoActionBar sürüme temasını değiştirmek:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <!-- Customize your theme here. --> 
</style> 

Şimdi İşlem Çubuğu görünür olmamalıdır. Araç Çubuğu XML kodunuzu diğer etkinlik düzenlerine ekleyin.

0

bu deneyin, işe yarayacak:

İşlem Çubuğu çubuğu = getActionBar();

bar.setBackgroundDrawable (yeni ColorDrawable ("COLOR"));

+0

Bunu ana ve diğer aktivitelerim için denedim ve işe yaramıyor. – skimmer001

+0

Nedense bu işe yaradı ... getSupportActionBar(). SetBackgroundDrawable (getDrawable (R.drawable.green)); ama API 21'e ihtiyacım var diyor – skimmer001