Gmail like navigation drawer (master page) in xamarin.forms

前端 未结 2 866
不知归路
不知归路 2021-01-22 12:34

I am currently using the master-detail page in xamarin.forms using MVVMlight and it renders based on the default behavior of os it renders perfectly what I wanted but in android

相关标签:
2条回答
  • 2021-01-22 13:29

    Yes you can. Check these links. They all use the MasterDetail page to create a Navigation Drawer. Only the Detail page becomes the main page view and the Master page becomes the sliding Menu. It is actually fairly simple. There are a couple of other good example out there also. However I think you can get the job done from the 3 links I listed. If not try a Search like How can I create a Navigation Drawer in Xamarin Forms.

    http://www.meritsolutions.com/mobile-development/implementing-navigation-drawer-in-xamarinforms/

    https://www.syntaxismyui.com/xamarin-forms-masterdetail-page-navigation-recipe/

    http://blog.falafel.com/xamarin-creating-a-sliding-tray/

    0 讨论(0)
  • 2021-01-22 13:34

    Use FormsAppCompatActivity instead of FormsApplicationActivity.

    define your own toolbar.axml

    toolbar.axml

    <?xml version="1.0" encoding="utf-8"?>
    <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="?attr/actionBarSize"
        android:minHeight="?attr/actionBarSize"
        android:contentInsetStart="0dp"
        android:contentInsetLeft="0dp"
        app:contentInsetLeft="0dp"
        app:contentInsetStart="0dp"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
        app:layout_scrollFlags="scroll|enterAlways">
    </android.support.v7.widget.Toolbar>
    

    Set your own ToolbarResource

    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
        {
            protected override void OnCreate(Bundle bundle)
            {
                ToolbarResource = Resource.Layout.toolbar;
                base.OnCreate(bundle);
                global::Xamarin.Forms.Forms.Init(this, bundle);
                LoadApplication(new App());
            }
        }
    
    0 讨论(0)
提交回复
热议问题