2016-10-31 8 views
0

私のアプリケーションのアクションバーにいくつかの問題があります。アクションバーの背景色を変更したいので、このコードを使用しました。問題は、常にNullPointerExceptionが発生することです(barは常にnullです)。私に何ができる?Androidのアクションバーの色とメニュー

ActionBar bar = getActionBar(); 
    bar.setBackgroundDrawable(new ColorDrawable("COLOR")); 

また、アプリケーションの右上に(アクションバー内に)ドロップダウンメニューを追加したいと考えました。だから私は、このXMLコードと、このイベントを使用:

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:yourapp="http://schemas.android.com/apk/res-auto" > 

    <item android:id="@+id/spinner" 
    yourapp:showAsAction="ifRoom" 
    yourapp:actionViewClass="android.widget.Spinner" /> 
</menu> 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.menu_layout, menu); 
    MenuItem item = menu.findItem(R.id.spinner); 
    Spinner spinner = (Spinner) MenuItemCompat.getActionView(item); 
    spinner.setAdapter(adapter); // set the adapter to provide layout of rows and content 
    s.setOnItemSelectedListener(onItemSelectedListener); // set the listener, to perform actions based on item selection 

しかし、私はいつもyourappに多少の誤差が出る:actionViewClassは(私はいつも私がmyappのように使用どんな間違ったプレフィックスエラーが発生します) R.menu.menu_layout(R.menuは存在しません)にあります。私は間違って何をしていますか?

答えて

0

どのような種類のアクティビティを使用していますか?あなたはActionBarやツールバーを持っていますか?

あなたがSupportActionBarを使用している場合、あなたは試すことができます:メニューの問題については

getSupportActionBar(); 

を、あなたはres/menuフォルダ内のメニューレイアウトを持っていますか?

関連する問題