Я пытаюсь отобразить коллекцию внутри стека, используя Xamarin.forms. Но коллекция не показывает никаких данных. Я тестирую на IOS с использованием Visual Studio для Mac.
Я пытаюсь научиться использовать collectionview и основы Xamarin.Forms с ios
Я следовал самому простому примеру из Microsoft git repo для xamarin.forms, найденному здесь:
https://github.com/xamarin/xamarin-forms-samples/blob/master/UserInterface/CollectionViewDemos/CollectionViewDemos/Views/Layout/HorizontalListTextPage.xaml
Я скопировал простой пример в свой собственный проект в файле Mainpage.xaml, но данные коллекционного вида видны только при удалении внешнего Stacklayout, как показано ниже
<?xml version="1.0" encoding="utf-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:demo" x:Class="demo.MainPage">
<CollectionView ItemsLayout="{x:Static ListItemsLayout.HorizontalList}">
<CollectionView.ItemsSource>
<x:Array Type="{x:Type x:String}">
<x:String>Baboon</x:String>
<x:String>Capuchin Monkey</x:String>
<x:String>Blue Monkey</x:String>
<x:String>Squirrel Monkey</x:String>
<x:String>Golden Lion Tamarin</x:String>
<x:String>Howler Monkey</x:String>
<x:String>Japanese Macaque</x:String>
<x:String>Mandrill</x:String>
<x:String>Proboscis Monkey</x:String>
<x:String>Red-shanked Douc</x:String>
<x:String>Gray-shanked Douc</x:String>
<x:String>Golden Snub-nosed Monkey</x:String>
<x:String>Black Snub-nosed Monkey</x:String>
<x:String>Tonkin Snub-nosed Monkey</x:String>
<x:String>Thomas's Langur</x:String>
<x:String>Purple-faced Langur</x:String>
<x:String>Gelada</x:String>
</x:Array>
</CollectionView.ItemsSource>
</CollectionView>
</ContentPage>
Я добавил Forms.SetFlags ("CollectionView_Experimental"); апплету
Я ожидал, что данные будут видны даже при наличии стека в моем mainpage.xaml.
UPDATE
Если я установил высоту явно, данные коллекции будут видны, но это не сделано ни в одном из примеров в этом решении.
но в макетах примеров я ссылаюсь на то, что они не устанавливают высоту явно, это относится ко всем примерам, найденным здесь
https://github.com/xamarin/xamarin-forms-samples/tree/master/UserInterface/CollectionViewDemos
и если я запускаю пример решения, они все работают, как и ожидалось, но если я копирую примеры в свое собственное решение, мне нужно явно указать высоту.
UPDATE
Если MainPage обернута в навигационную страницу, все работает как ожидалось
MainPage = new NavigationPage(new MainPage());
но по умолчанию
MainPage = new MainPage()
ничего не сто