AndroidPlot - 在不同设备上不一致地定位TextLabelWidget

时间:2014-06-12 01:45:33

标签: androidplot

我有一个图表显示应用程序的信息,但在Android设备上运行时。图表上的文字位置不一致。

这些图片说明了问题:https://drive.google.com/folderview?id=0B7-CxJHQ5ZnjYjVlTlFQdElWRGM&usp=sharing

我在AndroidPlot中使用TextLabelWidget。如何在设备上的链接中使用相同的image1保持TextLabelWidget在图表上的位置?

1 个答案:

答案 0 :(得分:0)

问题似乎是您的绘图区域设置为填充屏幕的宽度,并且由于条形均匀分布在该空间中,因此它们的x位置基本上是屏幕宽度的一部分。

同时,您的标签似乎使用绝对定位定位。例如,此代码将4个标签定位在屏幕宽度的0%,25%,50%和75%处,距离屏幕顶部80个像素:

txtWidget1.position(0, XLayoutStyle.RELATIVE_TO_LEFT, PixelUtils.dpToPix(80), YLayoutStyle.ABSOLUTE_FROM_TOP, AnchorPosition.LEFT_TOP);
txtWidget2.position(0.25f, XLayoutStyle.RELATIVE_TO_LEFT, PixelUtils.dpToPix(80), YLayoutStyle.ABSOLUTE_FROM_TOP, AnchorPosition.LEFT_TOP);
txtWidget3.position(0.50f, XLayoutStyle.RELATIVE_TO_LEFT, PixelUtils.dpToPix(80), YLayoutStyle.ABSOLUTE_FROM_TOP, AnchorPosition.LEFT_TOP);
txtWidget4.position(0.75f, XLayoutStyle.RELATIVE_TO_LEFT, PixelUtils.dpToPix(80), YLayoutStyle.ABSOLUTE_FROM_TOP, AnchorPosition.LEFT_TOP);

您可能还需要处理一些其他因素,例如条宽,但这可能会让您更接近。您可能会发现this doc对于不同的定位方法有用。

如果您尚未使用它,则需要考虑使用的另一个工具是the Configurator。这将允许您在xml中设置位置等,并根据屏幕大小,方向等覆盖值。