我一直在寻找一种合适的方法来模拟在 iOS 应用程序中使用的翻页/ curl 类型,但在 Android 应用程序中。我在 Android 上看到的最接近的东西是 Google Play Books 应用程序。他们是否使用了我没见过的 SDK 的某些部分?我是否有机会获得类似的实现?
我看到的大多数示例都是使用某种基于 OpenGL 的 RenderView 构建的。这可能会奏效,但我必须确保屏幕不会白白渲染,因为我不想使用太多电量。另外,在处理非 pow2 的纹理时,我有点害怕使用 OpenGL。
最好的问候, 卡勒
最佳答案
你必须使用 OpenGl 在 Android 中制作这样的效果并且必须使用 以下常见的正弦曲线图方程:-
y=Asin(2π/λ*x)
在哪里,
A = 振幅(即我们想要的 curl 高度)。
λ = 波长(即我们想要的 curl 的长度)。
x = X 轴变量,它会随着您移动页面而改变。
您必须在 SurfaceView 上绘制 3 个页面,即“LeftPage”、“CenterPage”和“RightPage”,“CenterPage”始终可见并负责“右 curl ”动画,而“LeftPage”负责“左 curl ”动画和“RightPage”只是保持静态。 要检测手势,请使用默认的 GestureDetector 类。
您可以从 here 下载示例.
关于java - 如何实现 Google Play 图书中使用的卷页类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18309723/