在 Xamarin.Forms 中检查用户使用的是 iPhone 还是 iPad



我已经环顾四周一段时间了,我不知道如何检查用户使用的是iPad还是iPhone?

我正在使用Xamarin.Forms,我不需要检查Android设备是平板电脑还是手机,因为该问题无法在Android周围解决。


我发现可能会有所帮助的代码:

var idiom = UIKit.UIDevice.CurrentDevice.UserInterfaceIdiom;

谢谢你的时间!

可以使用 Xamarin.Forms 中的设备类进行检查

if (Device.Idiom == TargetIdiom.Tablet)
{
    // iPad
}
if (Device.Idiom == TargetIdiom.Phone)
{
    // iPhone
}

这是一个适用于Android,iOS和Windows Phone的多平台解决方案。

如果需要在 XAML 文件中进行更改,可以使用 OnIdiom 标记,如下所示:

<StackLayout>
   <StackLayout.Padding>
      <OnIdiom x:TypeArguments="Thickness">
          <OnIdiom.Phone>
              10
          </OnIdiom.Phone>
          <OnIdiom.Tablet>
              20
          </OnIdiom.Tablet>
      </OnIdiom>
   </StackLayout.Padding>
</StackLayout>

Device.Idiom 在 IOS SDK 12.2 上对我不起作用。

这样做:

using UIKit;
UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone // or Pad

确切地说,Device.Idiom 返回 TargetIdiom.Unsupported,适用于 iPhone SE 和 iPhone XR。

相关内容

  • 没有找到相关文章

最新更新