为Android开发替代用户界面。我该走哪条路?
我正在为Android开发一个应用程序,其中我需要一个UI,该UI需要以下内容: 重新绘制至少10fps 屏幕上的按钮,但不是矩形 如果整个屏幕或至少是背景对系统来说太重,则需要在渲染前进行一些“波特·达夫”掩蔽 我目前想出了两种方法,两者都有利弊: 从框架中的现有视图-视图组开始。覆盖onDraw以向其添加遮罩。这更容易实现,但我不确定调用“invalidate”是否会导致任何问题 构建另一个视图-视图组结构,并在SurfaceView中进行渲染。但后来我意识到我找到了一个与框架中现有的结构非常接近的结构,我觉得在框架中做的事情几乎是一样的 有什么建议吗为Android开发替代用户界面。我该走哪条路?,android,animation,android-layout,Android,Animation,Android Layout,我正在为Android开发一个应用程序,其中我需要一个UI,该UI需要以下内容: 重新绘制至少10fps 屏幕上的按钮,但不是矩形 如果整个屏幕或至少是背景对系统来说太重,则需要在渲染前进行一些“波特·达夫”掩蔽 我目前想出了两种方法,两者都有利弊: 从框架中的现有视图-视图组开始。覆盖onDraw以向其添加遮罩。这更容易实现,但我不确定调用“invalidate”是否会导致任何问题 构建另一个视图-视图组结构,并在SurfaceView中进行渲染。但后来我意识到我找到了一个与框架中现有的结构非
另外,无论如何,我都不知道该如何捕捉按钮“点击”事件,它的形状不规则按钮很简单。只需在布局中添加一个按钮视图,并使用XML定义自己的自定义图像
android:background="@drawable/my_button_background"
边界将自动定义为可绘制对象的边界。简单易用。为什么不使用opengl?这些视图并不是为了让人耳目一新,因为对于这样一个2D场景来说,toftengl似乎有些过火,而且过于复杂。事实上,我在一个视图上测试了onDraw->invalidate,它仍然可以正常工作,每帧大约57毫秒,还有我的全屏porter duff。此外,SurfaceView旨在刷新:Falmari,你认为Android中的动画是如何发生的?当然,它们是用来经常提神的。他们经常被要求更频繁地刷新。我以前做过一个测试。是的,外观可能是不规则的。但是,命中区域仍然是矩形边界。例如,如果您制作了一个六边形按钮的平铺,一旦单击它,它可能无法按预期工作。