2017-07-26 30 views
0

ツールバーにアイコンの形で表示される2つのメニュー項目が苦労していますが、ツールバーには常にドロップダウンメニューの方法で表示されます。ここで Androidツールバーのアイコンが表示されない

MainActivity.java、これまでの私のコードです

package com.yardimobileinterns.apptoolbar; 

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.view.Menu; 
import android.view.MenuItem; 

public class MainActivity extends AppCompatActivity { 

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

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

     getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    } 

    //menu icons are inflated 

    @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_main, menu); 
     return super.onCreateOptionsMenu(menu); 
    } 


    @Override 
    public boolean onOptionsItemSelected(MenuItem menuItem) { 
     int id = menuItem.getItemId(); 

     switch (id) { 
      case R.id.miCompose: 
       composeMessage(); 
       break; 
      case R.id.miProfile: 
       showProfileView(); 
       break; 
     } 
     return super.onOptionsItemSelected(menuItem); 
    } 


    private void composeMessage() { 
     getSupportActionBar().setTitle("Compose"); 
    } 

    private void showProfileView() { 
     getSupportActionBar().setTitle("Profile"); 
    } 

} 

activity_main.xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    android:orientation="vertical"> 

    <include 
     layout="@layout/toolbar_main" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 


    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Hello World!" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginTop="100dp" 
     /> 

    <Button 
     android:id="@+id/button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/button" 
     android:layout_gravity="center" 
     android:layout_marginTop="100dp" 
     /> 

</LinearLayout> 

toolbar_main.xml

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@color/colorPrimary" 
    android:minHeight="?attr/actionBarSize" 
    app:titleTextColor="@android:color/white" 
    /> 

menu_main.xml: - パーはどこですか?差をつけるべきであるt

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="https://schemas.android.com/apk/res-auto" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    > 

    <item 
     android:id="@+id/miCompose" 
     android:icon="@drawable/menu" 
     android:title="@string/item1" 
     app:showAsAction="always"> 
    </item> 

    <item 
     android:id="@+id/miProfile" 
     android:icon="@drawable/week_view" 
     android:title="@string/profile" 
     app:showAsAction="always"> 
    </item> 

</menu> 

何か助けが歓迎されます。

+0

設定したいiツールバーまたはメニューのconsを追加してください。 –

+0

各アイテムにandroid:orderInCategory = "1"属性を追加してください。そしてあなたの要件に応じてカテゴリ番号を変更してください –

答えて

2

あなたは

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

menu.xmlにこの行を良いだろうが、ちょうど1行補正変更されているあなたがmenu_main.xmlできHTTP

+0

それは動作します!どうもありがとう! –

+1

よろしくお願いいたします。 –

+0

他の開発者のヘルプに私のansを受け入れるよりも便利です –

0

このように変更します。私は両方の項目を表示します。

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="https://schemas.android.com/apk/res-auto" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    > 

    <item 
     android:id="@+id/miCompose" 
     android:icon="@drawable/menu" 
     android:title="@string/item1" 
     android:orderInCategory="1" 
     app:showAsAction="always"> 
    </item> 

    <item 
     android:id="@+id/miProfile" 
     android:icon="@drawable/week_view" 
     android:title="@string/profile" 
     android:orderInCategory="2" 
     app:showAsAction="always"> 
    </item> 

</menu> 
1

から 's' を削除しますぬいぐるみ

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:balloonberry="http://schemas.android.com/apk/res-auto"> 

<item 
    android:id="@+id/miCompose" 
    balloonberry:showAsAction="always" 
    android:icon="@drawable/menu"/> 
<item 
    android:id="@+id/miProfile" 
    balloonberry:showAsAction="always" 
    android:icon="@drawable/week_view"/> 

    </menu> 
関連する問題