2011-07-03 12 views
0

私はデバイス2.1のAndroidアプリを開発しています。Eclair - > 3.0 Honeycomb。私は今、ユーザー設定領域の作成に移っています。私はMenu & ActionBar Itemsで悩んでしまった。Honeycomb ActionBar Items - クラッシュアプ​​リ

私は、その中に私の項目およびアイコンでメニューXMLリソースを作成した後、私はこれをJavaでそれをフックアップ:私はすでに持っていたものの上にこれらの輸入を追加

import android.view.Menu; 
import android.view.MenuInflater; 
import android.view.MenuItem; 

そしてAndroid Developers site said toとしての私の活動でこのコード:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.pixelappmenu, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
    case R.id.menuItem_Help: 
     helpDialogGo(); 
     return true; 
    case R.id.menuItem_Settings: 
     settingsActivityGo(); 
     return true; 
    default: 
     return super.onOptionsItemSelected(item); 
    } 
} 

(これは私がそれがうまく働いていたので、私もこのすべて新しいものコメントアウトし、それが起動追加されているすべてのです。 )ハニカムのタブレットでアプリケーションを起動しようとすると、メニューが表示され、タイトルとアイコンが表示されたメニューがFroyoでテストされました。アプリを分割して表示することさえできます

他のいくつかの可能性が関連するコード:

エキスのAndroidManifest.xml

<uses-sdk 
    android:minSdkVersion="7" 
    android:targetSdkVersion="11" /> 

pixelappmenu.xml

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item 
     android:title="Help" 
     android:id="@+id/menuItem_Help"/> 
    <item 
     android:title="Settings" 
    android:id="@+id/menuItem_Settings" 
    android:onClick="onMenuItemClick_Settings"/> 
</menu> 
+2

あなたはlogcatで任意のメッセージを持っていますか? – Gregory

+0

@ rabs83: 'android:onClick'属性を取り除いてみてください。あなたはそれを使用していませんし、非常に頻繁に使用されているとは思わないので、あなたの難しさの原因かもしれません。それ以外に、@Gregoryが示唆しているように、Eclipseで 'adb logcat'、DDMS、DDMSパースペクティブを使ってLogCatを調べ、あなたの"強制終了 "に関連するスタックトレースを調べます。 – CommonsWare

+0

@ CommonSWare、私はそれを行った、それは問題を引き起こしていません。助けてくれてありがとう。 – rabbitt

答えて

0

から私が修正を見つけました。

メニューのxmlファイル(res/menu/mymenu.xmlなど)で、メニュー項目がActionBar上にあることを宣言する必要があります。あなたはこれを置くことによってこれを行います

android:showAsAction="ifRoom|withText" 

あなたのXMLのあなたの項目の中で。

サンプル・コードはここにある:

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
<item 
    android:title="Help" 
    android:id="@+id/menuItem_Help" 
    android:showAsAction="ifRoom|withText"/> 
<item 
    android:title="Settings" 
    android:id="@+id/menuItem_Settings" 
    android:showAsAction="ifRoom|withText"/> 
</menu> 
+0

また、テキストを表示するだけの場合は、 "ifRoom"に設定し、オーバーフローメニューで「never」に設定することができます。 – rabbitt

関連する問題