问题标签 [android-resolution]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2655 浏览

android - 如何在android中制作各种屏幕尺寸的全屏图像?

当我们开发安卓应用程序时,我们将不同大小的图像放到各自的可绘制文件夹中,以适应不同的屏幕分辨率。例如,如果我想使用 32x32 像素的图像,我将制作具有不同尺寸的相同图像,如下所示。

24x24 ldpi
32x32 mdpi
48x48 hdpi
64x64 xhdpi
96x96 xxhdpi
128x128 xxxhdpi

它非常适合图标、精灵等。但现在我想制作一个背景图像以适应所有屏幕尺寸和密度。如果我制作一个 320x480 (wxh) 像素的图像,并假设我有 2 个具有正常 dpi、320x480 和 768x1024 的设备。图像将适合 320x480 设备的屏幕,但我不知道后者,因为图像不适合所有屏幕尺寸,除非它是 320x480 设备。如何计算我的背景图像的尺寸以适合所有屏幕尺寸和分辨率?

0 投票
1 回答
151 浏览

android - 特定密度的Android App Icon Resource ID

如何在 Android 中获取应用程序图标的特定密度(hdpi、xhdpi 等)的(int)资源 ID?

我知道我们可以使用 getDrawableForDensity() 方法获取特定密度的可绘制对象,但是如何获取此可绘制对象的资源 ID?

0 投票
3 回答
69 浏览

android - 为什么 imageview 中的 wrap_content 不会根据实际宽度使其变大?

我有一个ImageView

我看到的是,如果我设置一个具有尺寸的图像(基于我的电脑的信息)1280px854
如果我在我的电脑中打开它,图像看起来很大。尽管我已经设置
了相同的图像,但我的图像很小。 我不确定我是否明白这是如何工作的。例如 1280/4 = 320dpi (xxxhdpi) 但对于图像视图没有宽度 澄清:我试图理解为什么它会这样工作并且不会使它变大。ImageViewwrap_content
wrap_content320dpi
wrap_content

0 投票
3 回答
82 浏览

android - 我如何知道将为我的设备加载哪些资源?

如果我手头有任何设备,我怎么知道我的 apk 将使用哪些资源?
例如drawable-hdpi,或者drawable-xhdpi或者drawable-xxhdpi
我不是在理论上询问这些文件夹中的哪些是在何时加载的,但特别是如果我手头有一个随机设备,我怎么知道将使用哪个?

0 投票
2 回答
185 浏览

android - 根据设备宽度和高度设置字体大小

在我的应用程序中,我正在显示一个具有 textview(帐户标题)的 CardView。我根据设备宽度计算的卡片视图高度。

由于我根据设备宽度设置cardview高度,我想更改textview(帐户标题)的字体大小以使字体大小基于卡片高度。

我们如何根据设备宽度和高度为 textview 应用字体大小?

0 投票
1 回答
62 浏览

android - 将屏幕高度与不同分辨率的布局文件相结合?

我设置了我的 Android 应用程序以支持不同的屏幕分辨率(ldpi、mdpi、hdpi、xhdpi、...),这似乎可以正常工作。另一方面,不同的屏幕高度不能正确缩放:我优化了我的设计以适应小屏幕(默认的 Android Studio 模拟器),这意味着更长的设备上有很多空白空间。有没有办法将屏幕分辨率(xhdpi,...)与屏幕长度(长,...)结合起来?如果这根本不可能,我将非常感谢布局缩放的替代方法以解决我的问题。我目前只使用 dp 和 RelativeLayouts。提前致谢。

下图中的RL代表RelativeLayouts。

短布局 长布局 布局结构 支持的分辨率

0 投票
1 回答
38 浏览

java - Android Studio 屏幕设置

大家好,我是 android studio 的初学者,我注意到当我在手机上运行我的应用程序时,状态栏和屏幕按钮都是可见的,但在我朋友的设备上没有状态栏或屏幕按钮所以它使用全分辨率,我怎样才能强制应用程序在所有设备上都有呢?我的手机和他手机的分辨率相同(1080x2340),但在他的手机上,它就像只是缩小了一样。有没有办法让应用程序在两台设备上都一样工作?我的意思是,分辨率相同,但由于状态栏/屏幕按钮,应用程序看起来不同。

0 投票
1 回答
115 浏览

android-studio - 使用尺寸设置文本大小 - Android Studio

我想通过屏幕分辨率将文本大小更改为手机,我使用这样的尺寸:

在此处输入图像描述

我设置了屏幕高度,它适用于像 naxus 5 或像素 3XL 这样的手机。我的问题是,如果这是我应该如何定义?我做了什么足以适应任何手机和平板电脑?

0 投票
2 回答
146 浏览

android - 安卓 | 为什么在具有相同分辨率和相同屏幕尺寸的两部不同手机上,活动看起来会有所不同?

设想

我正在开发一个随机应用程序,最近我遇到了一个问题。我在 Google pixel 3a xl android 模拟器和 Asus X00TD 物理设备上运行相同的应用程序。而且我知道华硕手机的用户界面真的发生了变化。

Pixel 3a XL 显示器规格:

显示尺寸:6.0 英寸分辨率:2160 × 1080 ppi:402ppi

华硕 X00TD 显示器规格:

显示尺寸:6.0 英寸分辨率:2160 × 1080 ppi:403ppi

您会看到它几乎相同,只是 ppi 不同,我认为这不会产生很大的不同。大约 6 个像素会受到影响,这不会改变整个 UI。我不知道dpi华硕x00td的分辨率。而且我在网上也找不到。

这是像素 3a xl 和华硕 x00td 之间的 UI 差异。

6.0寸手机对比

如您所见,模拟器和实体手机之间存在很大差异。所以,我有2个问题

  1. 有一种方法可以通过函数计算 dpi。但是,如果我没有手机但仍想知道该手机的 dpi res 怎么办?

  2. 为什么模拟器和实体手机差别很大?

编辑

我试图在互联网上计算它,但它给了我0.0631mm点间距。我无法理解它是什么。模拟器还显示像素 3a xl 具有400dpi分辨率。

400dpi那么,和有什么区别0.0631mm dot pitch

我尝试过的解决方案

我试图通过将最小宽度设置为 360dp 来模拟模拟器中的华硕设备。最初它看起来和华硕一样。模拟器正在xhdpi挑选dimens.xml. 所以,我做了修改dimens.xmlxhdpi但是华硕没有选择那个文件。相反,它选择了xxhdpi文件。在另一台设备 Realme 3 pro 中使用。我无法修改xxhdpi文件,因为它会弄乱所有 6 英寸以上显示屏手机的 UI。同时华硕仍在挑选xxhdpi文件,华硕的用户界面一团糟。

找不到解决办法。

0 投票
0 回答
32 浏览

android - ADB 更改系统分辨率,但不适用于应用程序

我有一个需要在 720x1280 360dpi 分辨率下工作的应用程序,当我使用 ADB sell wm 更改分辨率和 dpi 时,这会更改我手机上的分辨率。但是,该软件仍无法将分辨率识别为 720x1280。当使用 adb shell dumpsys 窗口显示它显示 init=1080x2160 480dpi base=720x1280 320dpi cur=720x1280 app=720x1128 rng=720x672-1128x1080。应用程序现在需要 720x1128 吗?可以改成1280吗?