dan*_*nca 5 size resources android screen
我开始使用android开发,我有一些关于支持不同屏幕尺寸的问题.我在这里已经阅读了所有相关内容,但仍然没有得到如何使用不同尺寸的图像用于不同的屏幕.我的情况是我在res/drawable/hdpi中放了一个图像,当我的三星注入4g以及我的galaxy 10.1平板电脑上时,它会被拾取.因为它们具有相同的密度等级,所以图像在两个设备上具有大致相同的物理尺寸.这就是问题,显然我希望我的平板电脑上的图像更大,但我还没有找到办法做到这一点.
我确实看过另一个小,中,大的分类,但这似乎只适用于布局而不是图像资源.
任何指针将不胜感激.
谢谢!
这两个设备的密度不同.三星Infuse是hdpi,Galaxy Tab 10.1是mdpi.
此外,您通常不希望平板电脑上的图像更大.考虑一下 - 如果我在我的应用程序中有一个联系人列表,我希望它们在手机和平板电脑上的高度相同,因为没有用它们使它们更高(高度足以显示文本并且能够用我的手指点击它,但我想要做的是使用额外的空间来显示更多的空间.
如果你真的想要一个平板电脑比手机更大的图像,你需要更多地解释你实际想要完成的事情.例如,也许这是一张背景图片?在这种情况下,您可能正在寻找的只是让图像拉伸以填满屏幕.(请注意,在Android上制作背景图片非常棘手,因为您需要处理各种适合的屏幕尺寸.为避免让自己变得疯狂,背景图像通常应该非常抽象,以便拉伸效果很好以安卓3.0和4.0中使用的背景图片为例,以默认主题为例.)
如果您正在编写游戏,这是一个非常不同的世界,您应该考虑是否要使用基于密度的资源.一般来说,游戏将拥有独立于密度的资源,只需将自己的游戏场地填满屏幕,并对平板电脑上的结果感到满意.
将图像放入例如后
/res/layout-480x800` - if you know resolution
/res/layout-w480dp - if you know witdh
/res/layout-h800dp - if you know height
Run Code Online (Sandbox Code Playgroud)
Android 会自动为您选择图片。只需将分辨率相同但名称相同的图片放入此子文件夹中即可。然后只需使用(不带 spacyfing 限定符):
android:src="@drawable/background"
Run Code Online (Sandbox Code Playgroud)
或者
imageView.setImageResource(R.drawable.background);
Run Code Online (Sandbox Code Playgroud)
限定符的优先顺序可以在文档中找到(表 2)
| 归档时间: |
|
| 查看次数: |
5230 次 |
| 最近记录: |