Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中构建一个图形化的针规UI小部件?_Android_Android Widget_Gauge - Fatal编程技术网

如何在Android中构建一个图形化的针规UI小部件?

如何在Android中构建一个图形化的针规UI小部件?,android,android-widget,gauge,Android,Android Widget,Gauge,我需要一个用于我的应用程序的图形指针(如速度计等),但这样的UI小部件不是SDK的一部分,所以我可能必须自己创建它 我的想法是将带有记号和彩色区域(绿色、黄色、红色)的背景作为一个位图,将指针作为另一个位图绘制在背景上,但以适当的角度旋转 在我的书《专业Android 2应用程序开发》中,有一个类似的例子,上面有一个指南针玫瑰,尽管它是用线条图形绘制的,而不是像我为了获得想要的外观而必须使用的预制图像 但是,在指南针示例中,整个画布在绘制记号之前会旋转。我不能使用这种方法,因为它还会旋转仪表背景

我需要一个用于我的应用程序的图形指针(如速度计等),但这样的UI小部件不是SDK的一部分,所以我可能必须自己创建它

我的想法是将带有记号和彩色区域(绿色、黄色、红色)的背景作为一个位图,将指针作为另一个位图绘制在背景上,但以适当的角度旋转

在我的书《专业Android 2应用程序开发》中,有一个类似的例子,上面有一个指南针玫瑰,尽管它是用线条图形绘制的,而不是像我为了获得想要的外观而必须使用的预制图像

但是,在指南针示例中,整个画布在绘制记号之前会旋转。我不能使用这种方法,因为它还会旋转仪表背景。因此,我需要在叠加之前以某种方式旋转针图像(应该是透明的)。但我不知道如何做到这一点


有人能告诉我如何使用针规的正确方向吗?此外,如果有比上面所画的更好的方法来构建仪表,请告诉我。

您可以将仪表划分为不同的层。一个用于背景,一个用于记号。标记层可以旋转以绘制标记,当返回并与“背景”层组合时

使用上述图层技术,您可以看到以下示例:


另外,这不是我的博客,我刚刚在那里找到了这个技巧。

非常感谢你的链接!!!同一个人也有这个教程,这正是我需要的:因为我的手机没有温度传感器,我需要在代码中手动设置温度;除此之外,它马上就可以工作了。现在我可以用这个来模拟我的仪表。太棒了:-)