如果分辨率很小,则禁用应用旋转

Posted

技术标签:

【中文标题】如果分辨率很小,则禁用应用旋转【英文标题】:Disable app rotation if resolution is small 【发布时间】:2021-10-05 17:40:39 【问题描述】:

我目前正在使用 Jetpack Compose 开发一个用 Kotlin 编写的 android 应用程序。我的目标是获得一个响应式应用程序,它可以响应式地在智能手机和桌子上运行。为此,我获取用户的当前宽度,然后决定该宽度如何显示 UI,因为在某些情况下我必须显示其他内容。

我通过使用 BoxWithConstraints 获取用户显示的当前宽度:

BoxWithConstraints(modifier = Modifier.fillMaxSize())

   val largeScreen = this.maxWidth > 1000.dp

目前这可以正常工作,但是当用户将智能手机上的屏幕旋转到横向时,由于设备的高度太小,我会遇到问题。在我的应用程序中,在横向中使用它甚至没有意义。而且我不希望用户在智能手机的应用程序中使用横向。在平板设备上可以,但在智能手机上不行。

我能找到的只是锁定整个应用的纵向模式。但我希望能够在平板电脑上启用横向和纵向,并仅在智能手机上启用纵向模式。

有没有人也遇到过这个问题。

非常感谢!

【问题讨论】:

见***.com/questions/2366706/… 【参考方案1】:

getRequestedOrientation() 和相同的设置器。您可以使用 largeScreen 布尔值对前者设置条件,如果屏幕很大则允许横向旋转,否则在后者的帮助下阻止。

【讨论】:

以上是关于如果分辨率很小,则禁用应用旋转的主要内容,如果未能解决你的问题,请参考以下文章

iPad模拟器的屏幕分辨率

Bootstrap-Grid 1920 分辨率图片仍然很小

Flex应用程序中的屏幕分辨率问题

远程桌面在自己电脑显示很小的解决办法

远程桌面在自己电脑显示很小的解决办法

使用启动屏幕在通用应用程序中禁用对 iPad Pro 的支持