布局像蜘蛛一样

4
我希望有一个圆柱形的、类似蜘蛛网的布局: 我知道可以使用canvas来绘制它,但我需要所有部分都可点击,而canvas很难处理所有部分的触摸。
有什么好的想法吗?
2个回答

3

我可以想要类似蜘蛛网的布局吗...

可以想要,但是如果你想要实际创建这种布局,那么你不能使用标准的Android小部件。

如果你想要创建它,我建议手动在画布上绘制,并使用onTouchListener来捕捉按键事件。


是的,你说得对,但是在所有部分中绘制并添加一些文本非常困难,因此使用onTouchListener捕获所有文本的按键按下确实非常困难。还有其他方法吗? - Niranj Patel
我认为你甚至不能使用标准的View-ViewGroup框架,因为它仅支持矩形视图。是的,这是非常复杂的任务,没有其他方法。 - Dmitry Ryadnenko
@CapDroid,是的伙计,没有其他办法!! - Dhruv

3

我不确定,但希望这能帮到你...

Path类保存了一组矢量绘图命令,例如线条、矩形和曲线。以下是一个定义圆形路径的示例:

circle = new Path();
circle.addCircle(150, 150, 100, Direction.CW);

这定义了一个位于x=150,y=150,半径为100像素的圆。现在我们已经定义了路径,让我们使用它来绘制圆的轮廓以及内部周围的一些文本:
private static final String QUOTE = "Now is the time for all " +
"good men to come to the aid of their country." ;
canvas.drawPath(circle, cPaint);
canvas.drawTextOnPath(QUOTE, circle, 0, 20, tPaint);

您可以在这个图中看到结果

这是图片

如果你想变得更加高级,Android提供了许多PathEffect类,可以让你做一些事情,比如对路径应用随机置换,使路径上的所有线段平滑曲线或分成线段,并创建其他效果。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接