Android菜单不显示

时间:2016-07-02 09:18:07

标签: java android xml

我试图找到解决方案,并从这篇文章中重新创建菜单(包含解决方案)

Menu items doesn't show up on the actionbar using Android Studio 1.4

但显示菜单就像完全黑屏

这是我的代码

main.xml中

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

    <item android:id="@+id/action_search"
        android:icon="@drawable/common_full_open_on_phone"
        app:showAsAction="always"
        android:title="Search" />

    <item android:id="@+id/action_compose"
        android:icon="@drawable/common_full_open_on_phone"
        app:showAsAction="ifRoom"
        android:title="Compose" />

    <item android:id="@+id/action_compose1"
        android:icon="@drawable/common_full_open_on_phone"
        app:showAsAction="ifRoom"
        android:title="Compose" />

    <item android:id="@+id/action_compose2"
        android:icon="@drawable/common_full_open_on_phone"
        app:showAsAction="ifRoom"
        android:title="Compose" />

</menu>

Activity_main

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <android.support.v7.widget.Toolbar
        android:id="@+id/my_toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        android:elevation="4dp"
        android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

</RelativeLayout>

MainActivity

package testproject.example.com.sensor_new;

import android.os.Bundle;
import android.app.Activity;

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

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        Toast.makeText(this, "onCreateOptionsMenu", Toast.LENGTH_LONG).show();
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.main, menu);
        return super.onCreateOptionsMenu(menu);
    }


}

清单

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="testproject.example.com.sensor_new">

    <uses-sdk
        android:minSdkVersion="12"
        android:targetSdkVersion="17" />
    <permission
        android:name="testproject.example.googlemaps.permission.MAPS_RECEIVE"
        android:protectionLevel="signature" />

    <uses-permission android:name="android.permission.INTERNET" />
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:theme="@style/Theme.AppCompat.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

我甚至应用了解决方案中给出的样式主题,但我仍然没有得到菜单,

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:2)

您尚未初始化工具栏。

  Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
    setSupportActionBar(toolbar);

将以上代码添加到您的onCreate方法

答案 1 :(得分:2)

做这件事

1。确保The requested URL /demos/CodeIgniter/send was not found on this server.Apache/2.4.12 (Ubuntu) Server at localhost Port 80 代替import android.support.v7.widget.Toolbar

2。将此android.widget.Toolbar更改为Activity

3。确保您的父主题风格     AppCompactActivity