Xamarin Forms: AbsoluteLayout - PullRequest
       51

Xamarin Forms: AbsoluteLayout

0 голосов
/ 17 сентября 2018

Мне нужно использовать AbsoluteLayout для других элементов управления на странице, не указанной здесь. Как мне расположить общий senerio, где у меня есть SearchBar вверху, а затем ListView, который заполняет остальную часть экрана.

Я пробовал это, но ListView идет неправильно под SearchBar

    <AbsoluteLayout VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
        <SearchBar></SearchBar>
        <ListView 
            AbsoluteLayout.LayoutFlags="All"
            AbsoluteLayout.LayoutBounds="0,0,1,1">
        </ListView>
      </AbsoluteLayout>    

1 Ответ

0 голосов
/ 17 сентября 2018

Часть проблемы - это AbsoluteLayoutFlags, которые вы установили в просмотре списка.

когда вы установите его на все, вы говорите, что макет должен начинаться с 0,0 и идти до 1,1. Вот почему просмотр списка появляется на панели поиска.

<AbsoluteLayout VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
    <SearchBar AbsoluteLayout.LayoutBounds="0,0,1,40"
               AbsoluteLayout.LayoutFlags="WidthProportional,PositionProportional"/>
    <ListView 
        AbsoluteLayout.LayoutFlags="XProportional,SizeProportional"
        AbsoluteLayout.LayoutBounds="0,40,1,1">
        <ListView.ItemsSource>
            <x:Array Type="{x:Type x:String}">
                <x:String>mono</x:String>
                <x:String>monodroid</x:String>
                <x:String>monotouch</x:String>
                <x:String>monorail</x:String>
                <x:String>monodevelop</x:String>
                <x:String>monotone</x:String>
                <x:String>monopoly</x:String>
                <x:String>monomodal</x:String>
                <x:String>mononucleosis</x:String>
            </x:Array>
        </ListView.ItemsSource>
    </ListView>
</AbsoluteLayout>

Документация Xamarin

Я уверен, что вы ссылались на документацию. Я связал это здесь и процитировал часть этого. Надеюсь, это поможет.

Пропорциональные значения определяют отношения между компоновкой и представлением. Это отношение определяет позицию или масштабное значение дочернего представления как пропорция соответствующего значения родительского макета. Эти значения выражаются в виде двойных значений от 0 до 1.

Пропорциональные значения используются для позиционирования и размера представлений в пределах раскладка. Таким образом, когда ширина представления задается как пропорция, результирующий значение ширины - это пропорция, умноженная на абсолютное значение ширина. Например, с AbsoluteLayout шириной 500 и набором представления иметь пропорциональную ширину .5, отображаемую ширину вида будет 250 (500 х .5).

...