2016-05-16 3 views
0

Ситуация: Создание приложения с использованием компонентов Xamarin Forms и MasterDetail.Xamarin forms MasterDetail and PageRenderer

Вопрос: Как я могу отобразить определенную страницу на Android на основе PageRender? и сохранить ящик?

Редактировать

public class MasterBacASable : MasterDetailPage 
{ 
    public MasterBacASable() 
    { 
     Icon = null; 
     Title = "The title"; 
     Detail = (new FirstPage()); 
     Master = new AppMenuPage(); 
    } 
} 

[сборка: ExportRenderer (TypeOf (BacASable.FirstPage), TypeOf (BacASable.Droid.FirstPageContentRennderer))] пространство имен BacASable.Droid { FirstPageContentRennderer общественного класса: PageRenderer { общественного FirstPageContentRennderer() {
}

protected override void OnElementChanged (ElementChangedEventArgs<Page> e) 
    { 
     base.OnElementChanged (e); 
     var activity = this.Context as Activity; 
     var v = activity.LayoutInflater.Inflate (Resource.Layout.AndroidView,this,false); 
     AddView (v); 
    } 
} 

}

ответ

0

Выполните это для Xamarin.Forms Master-Detail Documentation

Базовая концепция заключается в следующем

public class MainPageCS : MasterDetailPage 
{ 
    MasterPageCS masterPage; 

    public MainPageCS() 
    { 
     masterPage = new MasterPageCS(); 
     Master = masterPage; 
     Detail = new NavigationPage (new ContactsPageCS()); 
     ... 
    }  
} 

Ваш Master ваш ящик и Detail страницы (ContentPage, TabbedPage, NavigationPage, CustomPageRenderer).

Таким образом, каждый раз, когда вы хотите, чтобы отобразить другую страницу установить Detail свойство

Detail = new MyContentPage(); 
+0

http://stackoverflow.com/questions/36390545/can-you-make-a-clickevent-with-the-masterdetailpage-icon-text/36396688#36396688 –

+0

Привет и Thx. Моя проблема заключается в попытке получить Spcecific androidView. – Ramah

0

Я просто забывание переопределить OnLayout в видеообработки. Спасибо всем.

Смежные вопросы