2011-08-04 10 views
21

私はアンドロイド - サポート-v4.jarライブラリを使用するので、電話とタブレットの両方のバージョンをサポートするアプリケーションを作成します。私のアクティビティはFragmentActivityを拡張し、onCreateOptionsMenu(メニューメニュー)をオーバーライドします。これはタブレットで正常に動作しますが、onCreateOptionsMenuは正しく呼び出されますが、電話では機能しません。onCreateOptionsMenuは呼び出されません。これを解決するには?onCreateOptionsMenuが電話のバージョンで実行されたときにFragmentActivityで呼び出されない

注:マニフェストファイルには<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="12"/>を使用しています。

答えて

70

あなたのFragmentコードから検討する必要があります。そして、あなたは両方でOKになります

1)実装onCreateOptionsMenu(Menu menu, MenuInflater inflater)

2)setHasOptionsMenu

3)との呼び出しもonOptionsItemSelected(MenuItem item)

を実装電話とタブレット。

+1

これは今すぐ動作します;) –

+28

setHasOptionsMenuを呼び出すのは非常に簡単です。 – bencallis

+4

PJLに加えて別の呼び出しがあります: 4)setMenuVisibility(true); – Buffalo

関連する問題