2013-09-03 7 views
6

Google IO 2013で導入されたActionBarSherlockからActionBarCompatライブラリへの移行中です(私はこれを使用してActionBarDrawerToggleを使用できます)。最後のメソッドをActionBarActivityからオーバーライドできません

私はすでにすべてのインポートを修正しましたが、現在ActionBarActivityのonMenuItemSelectedを使用しようとすると、エラーが発生します(AppCompat、最新のサポートライブラリ...)すべての必要な依存関係をソートしました。

@Override 
public boolean onMenuItemSelected(int featureId, MenuItem item) { 
    ... 
} 

エラー:

Cannot override the final method from ActionBarActivity

FragmentActivityから継承)ActionBarActivityから元のメソッドが最終です。私がABSを使用したとき、これは機能していましたが、今はそのメソッドをオーバーライドできません。

(MenuItemには、クラスandroid.view.MenuItemなくcompatのバージョンである...)

私は何かが足りないのですか?

答えて

11

onMenuItemSelectedの代わりにonOptionsItemSelectedを使用し、コードをコンパイルしても問題ありません。

onMenuItemSelectedは文書には表示されますが、コードには表示されないことがありますか?

+3

あなたの質問に答えてください:いいえ、 'android.support.v7.app.ActionBar'メソッドの' onMenuItemSelected'メソッドはコードにありますが、** final **メソッドです。 **最終**メソッド。 – Stigi

+0

申し訳ありませんが、誤って編集してしまいました。もちろん、私は 'android.support.v7.ActionBarActivity'を意味しました。 – Stigi

+0

@Stigiあなたは正しいですが、それは奇妙です。なぜなら、ABSを使用すると、それを上書きしてしまい、最終的に定義されるからです。それを無効にしないと目的が何であるかわからない... – Michael

関連する問題