Просмотр телефона и планшета для Xamarin.Forms - PullRequest
0 голосов
/ 27 января 2020

Я пытаюсь сделать xaml, который может отличаться в телефоне и планшете. У меня есть что-то вроде этого:

<OnIdiom x:TypeArguments="View">
    <OnIdiom.Phone>
        <ContentView VerticalOptions="CenterAndExpand">
            ...
            <LineEntry x:Name="User" Style="{StaticResource Style1}"/>
            ...
        </ContentView>
    </OnIdiom.Phone>
    <OnIdiom.Tablet>
        <ContentView VerticalOptions="End">
            ...
            <LineEntry x:Name="User" Style="{StaticResource Style2}"/>
            ...
        </ContentView>
    </OnIdiom.Tablet>
</OnIdiom>

Но я не могу использовать то же имя в коде позади. Как я могу сделать? я не хочу использовать 2 переменные (например, userPhone и userTablet) для каждой платформы. Есть ли другой способ сделать это? ТНХ!

1 Ответ

0 голосов
/ 27 января 2020

Большинство свойств объекта можно изменить с помощью OnIdiom или OnPlatform.

<Image Aspect="AspectFit" x:Name="logoImg">
     <Image.HeightRequest>
          <OnPlatform Default="400" Android="350" />
     </Image.HeightRequest>
     <Image.IsVisible>
          <OnIdiom Default="True" Phone="False" />
     </Image.IsVisible>
</Image>

Так что в вашем примере (не проверено)

<ContentView>
   <ContentView.VerticalOptions>
      <OnIdiom Default="End" Phone="CenterAndExpand" />
   <ContentView.VerticalOptions>
</ContentView>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...