[英]How to lock tablet screen rotation in UWP app?
我希望在Windows 10上运行的UWP应用仅支持横向方向,但这是一个问题。 首先,我提出了这个问题: 链接
来自GitHub的示例运行正常,然后我尝试使用复选框设置方向,当我设置方向时,如下所示:
DisplayOrientations orientations = DisplayOrientations.Landscape;
DisplayInformation.AutoRotationPreferences = orientations;
它也可以。 大。
但这是一个问题。 如果您尝试按开始以暂停应用程序,然后再次按以恢复应用程序,则所有轮播首选项都将默认设置。 就像重置轮播首选项一样。
我试图设置Suspending方法,但是它不起作用。 尝试使用调试器,如果没有调试器,则无法使用。 在清单文件中设置“支持的旋转”和“锁定屏幕”声明也不起作用。 有人可以帮我吗?
一些有用的链接: 创建Windows应用程序 , 应用程序生命周期 , 显示方向示例 。
如果在平板电脑模式下仅在Package.appxmanifest(双击/横向)中进行设置,则可以尝试在应用恢复时进行设置。
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
Application.Current.Resuming += Application_Current_Resuming;
}
private async void Application_Current_Resuming(object sender, object e)
{
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, new Windows.UI.Core.DispatchedHandler(() =>
{
// Your code here
}));
}
}
我认为最好的解决方案是:您可以将应用程序锁定为横向模式,例如:
Windows.Graphics.Display.DisplayInformation.AutoRotationPreferences = Windows.Graphics.Display.DisplayOrientations.Landscape;
然后,当您要将自动旋转返回给用户时,请使用以下代码:
Windows.Graphics.Display.DisplayInformation.AutoRotationPreferences = Windows.Graphics.Display.DisplayOrientations.Landscape | Windows.Graphics.Display.DisplayOrientations.LandscapeFlipped
| Windows.Graphics.Display.DisplayOrientations.None | Windows.Graphics.Display.DisplayOrientations.Portrait | Windows.Graphics.Display.DisplayOrientations.PortraitFlipped;
问候
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.