![](/img/trans.png)
[英]How to determine the screen width in terms of dp or dip at runtime in Android?
[英]Multi Screen Support with dip/dp in Android?
假设我在XML文件中将按钮或文本视图宽度定义为100 dip和height为30 dip。 至于我所知道的,Android本身负责处理ldpi,mdpi或hdpi设备中的按钮或文本视图外观,因为我在dip中定义了尺寸。 如果您想提供多屏支持,这是建议之一。 我的问题是, dip仅用于处理具有相同宽度和高度的ldpi,mdpi或hdpi设备意味着所有320X480或所有400X840,或者它还支持多屏尺寸意味着如果我为320X480设备定义了100X30倾角的按钮在清单文件中添加所有屏幕支持后,android系统自动将小部件大小重新计算为200X60到700X1024设备。
如果dip不能在多种屏幕尺寸上工作(如果设备物理尺寸不同),那么我需要为每个设备编写sepearte布局文件,我无法使用带有一些权重的线性布局来定义我的复杂布局,如果我是正确的我错误。 建议我,有没有其他选择。 提前致谢。
dip
是“密度无关的”,因此这些度量单位与密度有关,而与屏幕尺寸无关。 例如,有10个仍然是mdpi
平板电脑,当然在小型mdpi
手机上看起来很好的布局在这些设备上看起来很糟糕。这里的解决方法是使用尺寸值并在这种情况下覆盖它们。现在,而不是例如,在你的XML中使用10dip
,你将使用@dimen/dip_10
,它将在values/mdpi
和values/xlarge-mdpi
使用不同的值。希望这会有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.