`
sealbird
  • 浏览: 586374 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

在Android手机上实现阅读器的翻页效果 .

 
阅读更多
在Android手机上实现阅读器的翻页效果 .
分类: Android 2010-11-09 11:18 9423人阅读 评论(32) 收藏 举报
本篇文章来谈谈怎么使用java实现翻页效果,就像电子阅读器那样。



现在先来看看翻页的原理图:








先了解各个字母表示的含义:



A-把书页翻起来后看到的背面区域

B-把书页翻起来后看到的下一页的一角

C-当前页的可见部分。



a-手指滑动页角到达的位置

b-当前页翻起来后与书本垂直边的交点

c-当前页翻起来后与书本水平边的交点

m-翻页的起始点

n-书本右上角

t-书本左上角

o-直角坐标系原点



为了能在翻页的过程中看到下一页的部分内容,在每次翻页之前必须准备两张页面,一张是当前页,另一张是下一页。翻页的过程就是对这两张页面的剪切,组合过程。



看到图你也应该知道,这是一道什么几何题目了,好,那我们再把高中几何复习一遍吧。通过直线am的中点求它的中垂线bc,直线bc与书本的垂直边和水平边分别交于点b,点c,给出a点的动态坐标(x,y),求出b,c坐标。



知道了a,b,c,m四点的坐标,就可以把四边形abcm用直线连起来,并把四边形abcm分成A,B 两部分,A部分表示书页翻起来后看到的当前页的背面区域,B部分表示书页翻起来后看到的下一页的部分区域。



在java的Graphics2D这个类里面有clip这样的方法来达到剪切图片的目的,这个方法需要传入的是一个GeneralPath这样的对象,他表示的是在一个图片上要剪切的一个封闭区域,而这里,我们要剪切的区域包括:

1.当前页的可见部分,是一个多边形ocabnt。

2.当前页翻起来的背面,这是个三角形acb。

3.下一页的一角,也是个三角形cmb。



这三个部分剪切完毕,组合到同一个画布里面就能形成这样的翻页效果了。



当然,在翻页的过程中,因为要根据手指的触点坐标来随时刷新界面的显示,即重画界面,需要重新计算b,c两点的坐标,根据最新的坐标重画各条直线,剪切直线包围起来的区域。界面的刷新频率根据自身需要调整。



如果你觉得直线围起来的区域过于生硬,不太像真实的翻页效果。没关系,你还可以使用贝塞尔曲线来连接交点a,b,c。Android上有画贝塞尔曲线的方法,Path类里面的quadTo(x1, y1, x2, y2)。





实际效果就像这样。








J2SE平台下的翻页效果示例代码:http://download.csdn.net/source/2818813,欢迎下载。小编积分匮乏,欢迎多多贡献。>_<



 

2010-11-09  by Ivan



分享到: 上一篇:获取Android系统正在运行的进程
下一篇:获取VersionCode
分享到:
评论

相关推荐

    在Android手机上实现阅读器的翻页效果

    Android 阅读器翻页效果实现 在 Android 手机上实现阅读器的翻页效果是 Android 开发中一个常见的需求。为了实现这个效果,我们需要了解一些基本的几何知识和 Java 图形处理技术。 首先,我们需要了解各个字母表示...

    Android 实现书籍翻页效果TXT阅读器

    在Android平台上开发一款书籍翻页效果的TXT阅读器是一项具有挑战性的任务,它涉及到许多关键技术点,包括文本处理、UI设计、动画效果以及性能优化。本文将深入探讨如何实现这样的应用,主要关注以下几个方面: 1. *...

    Android 翻页效果txt阅读器源码.rar

    在Android平台上,开发一款具有翻页效果的TXT阅读器是一项常见的任务,这涉及到对文本处理、用户界面设计以及动画效果的实现。这个"Android 翻页效果txt阅读器源码"提供了一个实现这一功能的实例,对于学习和理解...

    Android中用ViewPage实现真实翻页效果

    "Android中用ViewPage实现真实翻页效果"这个主题就是关于如何在Android应用中创建类似真实书籍翻页的效果。这种效果通常被用于电子书阅读器或者滑动浏览多页面内容的应用中,给用户带来更生动和自然的互动体验。 `...

    安卓Android源码——android 仿真翻页效果.rar

    这个压缩包文件"安卓Android源码——android 仿真翻页效果.rar"可能包含了一个示例项目,用于演示如何在Android平台上创建这种动态、逼真的翻页动画。以下将详细介绍实现这种效果的关键知识点。 1. **页面滑动...

    android 阅读器 翻页效果

    总结,实现Android阅读器的翻页效果涉及到多个技术层面,包括自定义视图、绘图、动画、手势识别、物理模拟以及性能优化等。通过巧妙地组合这些技术,开发者可以为用户提供一个既美观又流畅的阅读体验。

    android 仿真翻页效果.zip

    这个“android 仿真翻页效果.zip”压缩包包含了一个实现这种效果的源码示例。让我们深入探讨一下这个主题。 仿真翻页效果,也称为翻页动画或者物理翻页效果,它模拟了现实生活中纸质书籍翻页的动作,通过视觉和触觉...

    Android阅读器翻页

    本文将深入探讨“Android阅读器翻页”这一主题,包括其改良版本的功能增强,如支持播放视频和图片显示,以及实现这些功能所涉及的关键技术。 首先,Android阅读器翻页的核心是模拟真实的图书翻页效果。这通常涉及到...

    android翻页效果(阅读器)

    在Android平台上开发一款电子阅读器,实现如同纸质书籍般的翻页效果是一项常见的需求。这个项目名为"android翻页效果(阅读器)",它提供了一个完整的解决方案,允许用户通过手势来移动页眉和页脚,营造出逼真的阅读...

    安卓Android源码——逼真翻页效果.zip

    这个“安卓Android源码——逼真翻页效果.zip”压缩包很可能是提供了一种实现这种效果的示例代码。翻页效果通常用于电子书应用、杂志阅读器或者任何需要模拟纸质书翻页体验的界面中。下面我们将深入探讨这个主题,...

    android 项目源码下载:34套新闻阅读类项目分享

    Android 真实书籍翻页效果.rar Android 翻页效果txt阅读器源码.rar Android 荒村鬼话电子书源码.rar Android 赛贝尔曲线电子书源码.rar Android文本阅读器源代码.rar 开源中国android手机应用最新版本客户端.rar

    安卓Android源码——Android仿苹果的上下翻页效果.zip

    本压缩包中的"安卓Android源码——Android仿苹果的上下翻页效果.zip"就是这样一个例子,它展示了如何在Android平台上模仿苹果设备上常见的上下翻页效果。这种效果常见于电子书应用、新闻阅读器或者任何需要展示连续...

    Android程序研发源码Android 翻页效果txt阅读器源码.zip

    在Android平台上开发应用程序时,有时候我们希望为用户提供更丰富的交互体验,比如实现类似纸质书籍的翻页效果。这里提到的"Android程序研发源码Android 翻页效果txt阅读器源码.zip"就是一个专为此目的设计的项目。...

    Android代码-翻页效果txt阅读器源码.zip

    本篇文章将深入探讨一个特殊的项目——"Android代码-翻页效果txt阅读器源码",它实现了如同纸质书一样的翻页效果,使得电子阅读更加生动有趣。我们将从以下几个方面对源码进行详尽的分析: 1. **用户界面设计**: ...

    Android应用源码之android 仿真翻页效果.zip

    这个压缩包"Android应用源码之android 仿真翻页效果.zip"提供了一种实现这一效果的源代码示例,旨在帮助开发者理解和实践Android中的3D翻页动画。 首先,我们要理解Android的UI框架——View和 ViewGroup。在Android...

    安卓翻页效果相关-android用opengl实现电子书翻书效果代码.rar

    2. **纹理映射**:在实现翻页效果时,书中每一页可以被视为一个纹理。OpenGL ES支持纹理映射,即将2D图像(纹理)贴到3D模型表面的技术。开发者可能将页面图像加载为纹理,并将其应用到翻转的3D模型上。 3. **3D...

Global site tag (gtag.js) - Google Analytics