Страницы TabbedPage и Content не отображаются
Я довольно новичок в Xamarin и XML, хотя у меня есть опыт работы с C#. Я создал страницу с вкладками в XML, и она не отображается вообще Main.axml:
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:mypages="clr-namespace:MainActivity.Pages;assembly=MainActivity"
x:Class="MainActivity.tabPages">
<TabbedPage.Children>
<mypages:Home />
<mypages:AddLocation />
</TabbedPage.Children>
</TabbedPage>
У меня есть 2 дочерних страницы со вкладками (Дом и Добавить место). Я хочу, чтобы Домашняя страница была страницей по умолчанию, хотя даже TabbedPage не будет отображаться, и приложение будет пустым.
Home.axml
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MainActivity.ActualPage" Title="Home" BackgroundColor="Green">
<ContentPage.Content>
<Label Text="Hi there from Page 1" TextColor="White" Font="20"
VerticalOptions="Center" HorizontalOptions="Center" />
</ContentPage.Content>
</ContentPage>
MainActivity.cs:
using Android.App;
using Android.Widget;
using Android.OS;
namespace Xonify
{
[Activity(Label = "App", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : Activity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView (Resource.Layout.Main);
}
}
}
Спасибо,
Matt
1 ответ
Ваш MainActivity.cs не настроен для поддержки Xamarin Forms, он загружает представление непосредственно. Измените свой MainActivity.cs на это:
используя Android.App; используя Android.Widget; использование Android.OS;
namespace Xonify
{
[Activity(Label = "App", MainLauncher = true, Theme = "@style/MainTheme", Icon = "@drawable/icon")]
public class MainActivity : Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
Forms.Init(this, bundle);
LoadApplication(new Xonify.PCL.App()); // Change to point to your App.xaml.cs class
}
}
}
Вам также нужно будет создать файл с именем styles.xml в вашей папке Resources > Values и добавить эту тему в.
<?xml version="1.0" encoding="utf-8" ?>
<resources>
<style name="MainTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- You can change options in here, or change the parent style -->
</style>
</resources>
Если вы хотите увидеть пример, вы можете взглянуть на https://github.com/exrin/ExrinSample/blob/master/Exrin-Sample/ExrinSample.Droid/MainActivity.cs