我处在一个可以理解并编写一个不错的Android应用程序的阶段。在这个阶段,我仍然不满意 SurfaceHolder ,画布,查看无效()等。我没有CS背景所以我一定是从CS Graphics课程或其他东西那里错过了这些。
直接从Android开始似乎是一个坏主意,因为那里没有很多例子。有时我会完成任务,但我不明白到底发生了什么。例如,有一些悬空观察。从视图中调用invalidate()会调用它的onDraw方法,但是从外部它不会执行任何操作,我不知道为什么会发生这种情况。我知道SurfaceHolder可能是一个强大的东西,但我不知道如何使用它。
对于绝对的初学者来说,能够处理这些东西,应该遵循哪些资源?是动画基础知识还是屏幕渲染还是别的什么?我的意思是,Android家伙发明这些概念的情况不是这样吗?它们必须类似于已经有一些教程的东西。我的最终目标是让自己处于一个可以编写一些简单的自定义视图的位置,这些视图可以动画自己并使用一些基本物理来对触摸事件作出反应。
答案 0 :(得分:0)
由于你可以理解和编写应用程序,我假设你对编程很满意,所以这里有一些资源,我认为你在开发你的,开发技能时会发现它们有用:
对于触摸事件的反应,你应该探索MS Touch API
,如果你探索并花一些时间练习,你可以很好地掌握触摸事件的工作方式(信息,操纵,惯性支持等等。注意这个在C#
,但这只是理解概念的问题。):
http://msdn.microsoft.com/en-us/library/dd317323(v=VS.85).aspx
以下是一些使用C#
的动画示例(我认为最好在这里使用C#,这样你就可以让它们协同工作来制作一个结合Touch和2D动画的东西):
http://www.java2s.com/Code/CSharp/2D-Graphics/Animation.htm
如果你练习动画和触摸事件,这应该给你体面/不同的体验。那么也许你会对android API更加舒服一点(Canvas的功能和方法,比如所有clip____()
和draw____()
方法对你来说似乎不那么麻烦。)