C# 代码架构:Xamarin中特定于Android的XAML

C# 代码架构:Xamarin中特定于Android的XAML,c#,xamarin,architecture,C#,Xamarin,Architecture,Xamarin的新成员。我正在公共Xamarin项目中创建一个选项卡式页面,工具栏位于底部,如下所示(MyMainPage.xaml): 以上各项工作如预期。然而,我想做的是 <TabbedPage ... xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core" android:TabbedPage

Xamarin的新成员。我正在公共Xamarin项目中创建一个选项卡式页面,工具栏位于底部,如下所示(My
MainPage.xaml
):


以上各项工作如预期。然而,我想做的是

<TabbedPage ... xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
             android:TabbedPage.ToolbarPlacement="Bottom">


在MyProject.Android中,通过这种方式,我可以确保我所有特定于Android的工作都在该项目中。是否可以使用XAML(不使用代码隐藏)实现这一点,或者这里的最佳实践是什么

恐怕你不能那样做。从:

平台规范
允许您使用仅限于 在特定平台上可用,无需实现自定义 渲染器或效果

据我所知,它是为方便用户在共享项目中使用某些特定平台功能而设计的

平台细节的功能有不同的种类,一些用于视图,一些用于布局、页面等。您不能在一个类中编写它们


您也可以阅读关于如何

的文档,我认为您不能通过XAML no来阅读。但是您的所有页面都是分部类,因此您可以在android项目中创建一个具有相同名称和分部的类,以确保您从android中设置底部的ToolbarPlacement值project@Miiite不同的项目,,不同的程序集,因此您不能“共享”分部类。如果“公共”项目是共享项目,它可能不起作用?
<TabbedPage ... xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
             android:TabbedPage.ToolbarPlacement="Bottom">