当前位置: 首页 > 知识库问答 >
问题:

根据密度和屏幕大小有条件地使用Android可绘制资源

葛胡媚
2023-03-14

我想创建一个Android应用程序,在各种各样的设备上都有图像按钮,看起来不错,大小合适。我知道Android drawables可以内置多个级别的条件,最简单的方法是创建如下文件夹

drawable-ldpi
drawable-mdpi
drawable-hdpi
drawable-xhdpi

对于不同密度的位图。然而,在mdpi手机上看起来不错的按钮在mdpi平板电脑上看起来很薄,我更愿意在该应用程序中使用hdpi位图。有一种方法可以使用名为

drawable-small-ldpi
drawable-normal-ldpi
drawable-large-ldpi
drawable-xlarge-ldpi
drawable-small-mdpi
drawable-normal-mdpi ...

等等。如您所见,有十六个不同的文件夹来涵盖每个密度的条件屏幕大小。我可能可以通过使用默认值来减少这一点,例如

drawable-ldpi
drawable-large-ldpi
drawable-xlarge-ldpi ...

但我的目的是在一个密度上使用相同的可拉丝用于大屏幕和x-大屏幕,而在上述密度上使用相同的可拉丝用于小屏幕和普通屏幕。我觉得这种方法浪费了APK中的资源空间。有没有办法创建包含以下目标图像的单个可绘制文件夹:

  • 小型低密度器件

或者,是否有另一种基于设备大小和设备密度的条件?

共有1个答案

衡泰
2023-03-14

取自http://developer.android.com/guide/topics/resources/providing-resources.html#AliasResources:

当您有一个资源要用于多个设备配置(但不想作为默认资源提供)时,您不需要将同一资源放在多个备用资源目录中。相反,您可以(在某些情况下)创建一个备用资源,作为保存在默认资源目录中的资源的别名

 类似资料:
  • 我有一个可折叠的导航条构建与bootstrap 4。我使用了col-sm-2和navbar-expand-sm来使它以相同的屏幕尺寸折叠成一个汉堡包,它应该占据整个宽度。 问题是在sm屏幕尺寸以上,我希望它有h-100,所以它是一个侧栏,但作为sm/xs,我希望它只是占用拨动按钮所需的空间。 有没有办法用bootstrap来实现这一点,或者我被困在jquery中添加/删除h-100类?

  • 我想设计下面的UI。为了达到同样的效果,我试着使用拖拉。但问题是:在不同的屏幕尺寸上,可绘制图像的显示方式不同。屏幕尺寸为6.0时:可抽片呈椭圆形,下方为圆形。 用户界面设计尝试实现: 内容和布局: 线性布局可绘制: bg_布局: 主要的类别:

  • 问题内容: CSS nob在这里… 我正在研究一个响应式框架,并想象如何完成不同的任务。 根据屏幕的大小,它们具有添加到body标签的类,例如: .PhoneVisible,.DesktopVisible等… 他们也有将按钮链接到的类: .btn,小按钮,中按钮,大按钮 我对如何更改CSS感到困惑。IE浏览器类似: 您是否必须单独设置各种选项? 即.PhoneVisible .MyButtonOp

  • 我正在制作一个网站,它显示一定数量的文本。例如: “Lorem ipsum dolor sit amet,concetetur adipiscing elit。Suspendisse imperdiet venenatis nulla,sed viverra arcu eget ornare。Morbi commodo,ullamcorper neque egestas,est est iacul

  • 我在替换片段时使用幻灯片动画 来自左侧的片段动画: 右侧片段的动画: 在我的Galaxy Nexus(1280×720)上,这是根据需要工作的。我正在考虑没有720px宽度屏幕的设备。 如何根据屏幕大小设置objectAnimator的valueFrom和valueTo?

  • 问题内容: 有没有办法可靠地告诉浏览器的视口宽度(包括滚动条,但不包括其余的浏览器窗口)? 此处列出的所有属性都不能告诉我屏幕的宽度,包括滚动条(如果存在) 问题答案: 只要身体是100%,就可以工作。 HTML: CSS: 脚本: 我在演示中放了一个高大的div以强制滚动条。