2017-07-02 99 views
0

我試圖創建一個工具欄來保存項目在我的應用程序中。但我的工具欄沒有正確顯示。Xamarin中的工具欄Android沒有顯示圖標

是表示這樣 我要顯示這樣

在我的片段

public override void OnCreateOptionsMenu(IMenu menu, MenuInflater inflater) 
    { 
     inflater.Inflate(Resource.Menu.menu_RefuelingToolbar, menu); 
    } 

menu_RefuelingToolbar.xml

<?xml version="1.0" encoding="utf-8" ?> 
    <menu xmlns:android="http://schemas.android.com/apk/res/android" 
      xmlns:tools="http://schemas.android.com/tools" 
      tools:context=".RefuelingFragment"> 
      <item android:id="@+id/button_Save" 
       android:icon="@drawable/ic_done_white_24dp" 
       android:showAsAction="always" 
       android:title="Settings" /> 
    </menu> 
+0

什麼是您的活動,活動或AppCompatActivity的類型? –

+0

這是一個片段。不是活動。 – Chindara

+0

請問您可以發佈您的代碼嗎? –

回答

3

如果擴展AppCompatActivity而不是Activity像這樣:

public class MainActivity : AppCompatActivity {...}//instead of Activity 

在這種情況下,顯示圖片工具欄着,其原因在於:

當使用程序兼容性庫,菜單的資源應該是指在應用程序中的showAsAction:命名空間,而不是機器人:命名空間。 同樣,當不使用appcompat庫時,您應該使用android:showAsAction屬性。

我認爲問題在於你正在混合框架ActivityAppCompat菜單。

您應該使用AppCompatActivityAppCompat Action barapp:showAsAction;或與android:showAsAction活動。

編輯:修改代碼,menu_MGradeToolbar.xml這樣的:

<?xml version="1.0" encoding="utf-8" ?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    > 
<item android:id="@+id/button_MGradeSave" 
    android:icon="@drawable/ic_done_white_24dp" 
    app:showAsAction="ifRoom" 
    android:title="Save" /> 
</menu> 

Here是結果。

+0

我仍然無法讓它工作。請參考我的項目:https://github.com/Chindara/XamarinAndroidNavigationDrawer – Chindara

+0

非常感謝。它工作。我已經用解決方案更新了我的GitHub項目。 – Chindara

相關問題