如何处理具有相同分辨率但屏幕高度不同的 Android 设备

Posted

技术标签:

【中文标题】如何处理具有相同分辨率但屏幕高度不同的 Android 设备【英文标题】:How to handle Android devices with same resolution but with different screen heights 【发布时间】:2015-06-29 14:25:05 【问题描述】:

这是我的question here 的扩展。 我现在有两台设备——三星 Tab 4 和三星 Note——都是 10.1 英寸,分辨率都是 1280X800。问题是,在 Note 设备中,设备的导航面板(返回按钮、主页按钮)位于屏幕内部。因此,高度减少了约 48 像素。应用程序的内容不会出现在导航面板的范围内。请问你能告诉我如何处理这个吗?我也在寻找一种在 7 英寸平板设备上也能满足类似条件的解决方案。(例如,三星 7 英寸选项卡的导航面板位于设备主体上,而 nexus 7 设备的导航面板位于屏幕内部的设备内)。

我在<meta> 标签中尝试了height=device-height,但没有成功。

【问题讨论】:

您始终可以使用没有硬编码尺寸的布局,因此它可以轻松适应所有屏幕尺寸。 @linus: 我应该用 % 代替 em/px 吗? 是的,类似的。如果您首先构建一些简单的 UI,我建议您可以尝试并坚持使用线性布局。 还有其他解决方法吗?使用 screenHeight 等?宽度对我来说不是问题……我正面临高度问题…… 你可以使用@media 查询 【参考方案1】:

您可以使用@media 查询。这是一个例子:

<!DOCTYPE html>
<html>
    <head>
        <style>
            body 
                background-color: lightblue;
            

            @media screen and (max-width: 300px) 
                body 
                    background-color: lightgreen;
                
            
        </style>
     </head>
    <body>
     ...
</body>
</html>

这会将主体的背景颜色更改为浅蓝色。但是,当您将浏览器窗口的大小调整为小于 300 像素时,它将变为浅绿色。我希望这能帮助您解决问题。

【讨论】:

@lohith-krishna 这解决了您的问题吗?

以上是关于如何处理具有相同分辨率但屏幕高度不同的 Android 设备的主要内容,如果未能解决你的问题,请参考以下文章

如何处理所有可用 iPhone 分辨率的图像比例?

Cordova:如何处理图标?

如何处理具有相同实体 ID 的两个 IDP

如何处理具有完全不同构建系统的第三方库?

如何处理高度和中等明显的依赖问题?

本地化实践,如何处理语言和区域之间的差异