如果分辨率很小,则禁用应用旋转
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
布尔值对前者设置条件,如果屏幕很大则允许横向旋转,否则在后者的帮助下阻止。
【讨论】:
以上是关于如果分辨率很小,则禁用应用旋转的主要内容,如果未能解决你的问题,请参考以下文章