当前位置:  开发笔记 > 编程语言 > 正文

使用xaml的Xamarin.Forms中的iPhone和iPad的单独UI

如何解决《使用xaml的Xamarin.Forms中的iPhone和iPad的单独UI》经验,为你挑选了1个好方法。

我一直在研究支持iOS和Android平台的Xamarin.Forms应用程序。UI大部分是在Forms PCL项目中使用XAML构建的。我知道可以通过使用代码

if(Device.OS == TargetPlatform.iOS && Device.Idiom == TargetIdiom.Tablet)

如何通过XAML为iPad构建新的UI?



1> Joehl..:

您可以OnIdiom在xaml中使用Idiom值:


  
    
 

这样,您可以在手机或平板电脑的xaml中使用不同的值。

如果您的页面设计在手机和平​​板电脑上有很大不同,则最好实现两个不同的页面并导航至正确的页面,并在问题中添加idom代码:

if (Device.Idiom == TargetIdiom.Tablet || Device.Idiom == TargetIdiom.Desktop)
    await Navigation.PushAsync(new TabletPage());
else
    await Navigation.PushAsync(new Page());

请看James Montemagno的这篇博客文章,它准确地描述了您的问题。

*编辑:ContentView可以根据完全相同的方式在习惯用法的2 秒之间切换:

XAML:


后台代码:

if (Device.Idiom == TargetIdiom.Tablet || Device.Idiom == TargetIdiom.Desktop)
    MyPage.Content = new LargeDisplayContentView();
else
    MyPage.Content = new SmallDisplayContentView();


@DipankarSutradhar我使用了相同的方法,但是使用的是ContentView的平板电脑和手机版本,而不是创建单独的页面。效果基本相同。
推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有