0

我正在尝试使用 Xamarin.forms 在 stacklayout 中呈现一个集合视图。但是collectionview 没有显示任何数据。我正在使用 Visual Studio for Mac 在 ios 上进行测试。

我正在尝试学习在 ios 中使用 collectionview 和 Xamarin.Forms 基础知识

我已经按照这里找到的 microsoft git repo for xamarin.forms 的最基本示例: https ://github.com/xamarin/xamarin-forms-samples/blob/master/UserInterface/CollectionViewDemos/CollectionViewDemos/Views/Layout/Horizo​​ntalListTextPage .xaml

我已将简单示例复制到 Mainpage.xaml 文件中我自己的项目中,但只有在删除外部 Stacklayout 时才能看到 collectionview 数据,如下所示

 <?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"); 到appdelete

即使我的 mainpage.xaml 中存在堆栈布局,我也希望数据可见。

更新 如果我显式设置高度,则collectionview数据是可见的,但这在此解决方案的任何示例中都没有完成,但在我链接到的示例布局中,它们没有显式设置高度,这适用于所有示例在这里找到 https://github.com/xamarin/xamarin-forms-samples/tree/master/UserInterface/CollectionViewDemos

如果我开始示例解决方案,他们一切都按预期工作,但如果我将示例复制到我自己的解决方案中,我需要明确设置高度。

更新 如果 MainPage 包含在导航页面中,一切都按预期工作

 MainPage = new NavigationPage(new MainPage()); 

但默认

MainPage = new MainPage() 

什么都没有

4

0 回答 0