我正在开发一款适用于Android的应用,我需要一个需要以下功能的用户界面:
重绘至少10fps
屏幕上的按钮,但不是矩形
整个屏幕(或者至少是背景,如果系统太重了)需要在渲染之前进行一些'porter-duff'屏蔽,即时
我目前想出了两条路,两者都有缺点和优点。优点:
从框架中的现有View - ViewGroup开始。覆盖onDraw以向其添加掩蔽。这更容易实现,但我不确定调用'invalidate'是否会导致任何麻烦?
构建另一个View - ViewGroup结构,并在SurfaceView中进行渲染。但后来我意识到我建立了一个看起来与框架中现有结构非常接近的结构,我觉得这样做与框架几乎相同。
有什么建议吗?
(ps。在任何一种情况下,我不知道如何抓住按钮'click'事件,这是一个不规则的形状)
答案 0 :(得分:0)
按钮很简单。只需在布局中添加一个Button视图,然后使用XML定义自己的自定义图像。
android:background="@drawable/my_button_background"
边界自动定义为drawable的边界。简单易行。