在我的 Android 应用程序中,我有一个包含许多按钮和微调器的布局。我还为各个屏幕尺寸(hdpi、xhdpi 等)添加了不同的布局。问题是,当使用 Nexus S(表示为 hdpi)在模拟器中测试我的布局 hdpi 时,它看起来很好,但是当使用 Nexus One 测试它时(也表示为hdpi)按钮重叠?? 在布局中,所有尺寸均以 dp 为单位! 那么我不应该在 hdpi 中使用两台设备收到相同的结果吗?
最佳答案
我遇到了同样的问题,你应该做的是获取屏幕高度:宽度比率并将其命名为“比率”。
因此,您的 ratio = height/width
然后不要使用按钮或其他元素的大小(以 dp 为单位)的精确大小,而是以元素在 View 中占据的部分的形式获取大小。
我想我让你感到困惑,但这很容易,例如:
如果你想在屏幕的上半部分添加图像,那么不要说高度=150dp或宽度=200dp,你的屏幕高度是h,所以你的图像高度将是h/2,你的宽度将是小时/比率。
这也适用于横向模式,您不必在横向模式下找到按钮,因为它们位于屏幕之外。
关于java - Android应用程序不同布局尺寸的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19419432/