我想在圆形视图中绘制一个字符串说“stackoverflow”,如下图所示,任何人都可以建议如何操作。而且我还需要在每个characer上点击事件。
答案 0 :(得分:11)
您需要为此制作自定义视图。在onDraw方法中,创建一个路径对象,向该对象添加圆圈,然后使用Canvas Object在该路径上绘制文本。
Path path = new Path();
path.addCircle(x, y, radius, Path.Direction.CW);
myCanvas.drawTextOnPath(myText, path, offset, 0, myPaint);
编辑:
使用os 4.0及以上版本时使用以下代码:
setLayerType(View.LAYER_TYPE_SOFTWARE, null);
答案 1 :(得分:0)
查看Path.addCircle
和Canvas.drawTextOnPath
API。