2016-03-25 11 views
2

非常に初心者のAndroidプログラマーです。私は私の主な活動を持っているこの小さなプログラムを持っており、ユーザーがオプションをクリックするたびに、新しいアクティビティが開きます。私はそれぞれの異なる活動のために上部のツールバー/アクションバーの色を変えようとしています。私はAndroid API 15.私のアクティビティにはツールバーがありますが、XMLで表示されません

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

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

、のonCreate()メソッドでActivityクラス内のJavaコードによって色を変える試みたが、私は私の活動に切り替えてしまうたびプログラムは常にクラッシュしていました。

XMLファイルで自分のアクティビティを調べましたが、ツールバー/アクションコードはどこにも表示されませんが、主なアクティビティのapp_bar_main.xmlに表示されます。アクティビティのXMLファイルにアクションバーが表示されていない場合、なぜアクティビティバーにそのアクションバーが表示されるのか不思議です。新しく追加された非メインアクティビティのアクションバーの色を変更するにはどうすればよいですか?

答えて

0

アクションバーでアプリテーマを使用していると思います。 res/styles.xmlNoActionBarバージョンにテーマを変更:

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

今、アクションバーが表示されないはずです。ツールバーのXMLコードを他のアクティビティレイアウトに追加します。

0

これを試してみてください、それが動作します:

アクションバーバー= getActionBar();

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

+0

私は自分のメインと他のアクティビティでこれを試しましたが、動作しません。 – skimmer001

+0

何らかの理由でこれが機能しました... getSupportActionBar()。setBackgroundDrawable(getDrawable(R.drawable.green));私はAPI 21が必要だと言います – skimmer001

関連する問題