0
私のアプリでは2つのアクティビティがあります。私は、デフォルトのアクションバーに2つのメニュー項目を設定したいと思います。彼らはメインアクティビティで正しく設定されますが、他のアクティビティではバーには表示されません。ラベル付きのアクションバーは表示されますが、アクションメニューは表示されません。 デフォルトのアクションバーは、メインアクティビティにのみアクションメニュー項目を表示します
<activity
android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SecondActivity">
</activity>
</application>
メニュー項目:ここで
は、マニフェストファイルである<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/Settings"
android:icon="@drawable/ic_settings_white_48dp"
android:onClick="onClickDoAction"
app:showAsAction="ifRoom|withText"
android:title="Settings">
</item>
<item
android:id="@+id/Share"
android:icon="@drawable/ic_share_white_48dp"
android:onClick="onClickDoAction"
app:showAsAction="ifRoom|withText"
android:title="Share">
</item>
スタイル:
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowBackground">@color/background</item>
</style>
そしてMainActivity:
public class MainActivity extends AppCompatActivity {
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu, menu);
return true;
}
私はすべての活動にすぎなどがある)onCreateOptionsMenu(呼び出す必要があり、SecondActivityに私はこの点では何も行われていないことを言及
}
?...
私は多くの検索を行い、すべてのアクティビティでそれを呼び出す必要があることを明示していないので、アプリ内のすべてのアクティビティに伝播するマニフェストファイルの設定がないと考えました。私は間違っていたようだ...ありがとう! – Rucsi