2016-07-02 5 views
0

Я пытался найти решение и восстановить меню с этого поста (Содержат Solution)Android меню не отображается

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> 

A ctivity_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); 
    } 


} 

Manifest

<?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

вы не инициализировали панель инструментов.

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

добавить код выше в ваш onCreate метод

+0

он говорит: "не может решить метод setSupportActionBar (панель инструментов);" ....... я импортировал android.widget.Toolbar; –

+0

следует ли удалить его? –

+1

Расширьте MainActivity из AppCompatActivity, а не Activity. Тогда setSupportActionBar будет работать. Обратите внимание, что ваша тема должна быть определена родительской темой «Theme.AppCompat.Light.NoActionBar». –

2

сделать эту вещь

1. убедитесь, что import android.support.v7.widget.Toolbar вместо android.widget.Toolbar

2. изменение этой Activity в AppCompactActivity ,

3. убедитесь, что в стиле ваших родителей тема "Theme.AppCompat.Light.NoActionBar"

+0

спасибо, это тоже мой ответ –

+0

@NeerajVerma рада помочь вам. и я улучшаю свой формат, чтобы он помогал другим. – Ironman