ImageVerifierCode 换一换
格式:DOCX , 页数:46 ,大小:26.11KB ,
资源ID:28128093      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28128093.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于Android平台的手机电子书阅读器代码汇总.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于Android平台的手机电子书阅读器代码汇总.docx

1、基于Android平台的手机电子书阅读器代码汇总基于Android平台的手机电子书阅读器代码 package com.lrc.view;/* * 书籍阅读 */import java.io.IOException;import java.lang.reflect.Array;import java.math.BigDecimal;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Vector;import java.uti

2、l.regex.Matcher;import java.util.regex.Pattern;import com.lrc.R;import com.lrc.bll.BookPageFactory;import com.lrc.bll.DbDataOperation;import com.lrc.bll.DbTags;import com.lrc.bll.PageWidget;import com.lrc.util.ArrayUtil;import com.lrc.util.BgUtil;import com.lrc.util.MathUtil;import com.lrc.util.Time

3、Util;import android.app.Activity;import android.app.AlertDialog;import android.content.ContentResolver;import android.content.ContentValues;import android.content.DialogInterface;import android.content.Intent;import android.graphics.Bitmap;import android.graphics.Canvas;import android.graphics.Color

4、;import .Uri;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.provider.Settings;import android.util.DisplayMetrics;import android.util.Log;import android.view.Gravity;import android.view.KeyEvent;import android.view.Menu;import android.view.MotionEvent;impo

5、rt android.view.View;import android.view.View.OnClickListener;import android.view.View.OnTouchListener;import android.view.ViewGroup.LayoutParams;import android.view.Window;import android.view.WindowManager;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;impor

6、t android.widget.EditText;import android.widget.GridView;import android.widget.ImageButton;import android.widget.LinearLayout;import android.widget.PopupWindow;import android.widget.ProgressBar;import android.widget.SeekBar;import android.widget.SimpleAdapter;import android.widget.TextView;import an

7、droid.widget.SeekBar.OnSeekBarChangeListener;import android.widget.Toast;public class BookReadActivity extends Activity private PageWidget mPageWidget; Bitmap mCurPageBitmap, mNextPageBitmap; Canvas mCurPageCanvas, mNextPageCanvas; public static BookPageFactory pagefactory; int screenWidth ,screenHe

8、ight; int bookId; String bookPath,bookName,bookProgress; private int bookBeginPosition; /db private ContentResolver resolver; /tabMenu public final static int TITLE_USING_OFTEN = 0; public final static int TITLE_TOOLS = 1; public final static int MENU_FONT_SIZE = 0; public final static int MENU_READ

9、_THEME = 1; public final static int MENU_BRIGHTNESS_CONTROL = 2; public final static int MENU_FLIP_OVER = 3; public final static int MENU_JUMP = 4; public final static int MENU_SEARCH = 5; public final static int MENU_PRE_CHAPTER = 6; public final static int MENU_NEXT_CHAPTER= 7; public final static

10、 int MENU_CUSTOM_THEME = 0; public final static int MENU_AUDIO_BOOK = 1; public final static int MENU_BOOK_CHAPTER = 2; public final static int MENU_BOOK_CODE = 3; public final static int MENU_BOOK_MARK = 4; public final static int MENU_SETTING = 5; public final static int MENU_SHARE = 6; public fin

11、al static int MENU_BACK = 7; TabMenu.MenuBodyAdapter bodyAdapter=new TabMenu.MenuBodyAdapter2; TabMenu.MenuTitleAdapter titleAdapter; TabMenu tabMenu; int selTitle=0; PopupWindow popupWindow; /定义每项分页栏的内容 String title1BodyName , title2BodyName; int title1BodyIcon , title2BodyIcon; private SeekBar sbF

12、ontSize,sbBrightnessControl,sbJump; /menu jump private TextView tvCurrentProgress ; private ImageButton ibtnJumpUp,ibtnJumpDown; /flip over private Handler readHandler = new Handler(); private FlipOverRunnable flipOverRunnable = new FlipOverRunnable(); private boolean isRead = true; /menu custom the

13、me private SeekBar redForegroundSeekBar,greenForegroundSeekBar,blueForegroundSeekBar, redBackgroundSeekBar,greenBackgroundSeekBar,blueBackgroundSeekBar; int currentProgress; private TextView fontColorTxt,backgroundColorTxt,themeStyleTxt ; private int redForegoundProgress,greenForegroundProgress,blue

14、ForegroundProgress, redBackgoundProgress,greenBackgroundProgress,blueBackgroundProgress; private String foreColor,foreR=00,foreG=00,foreB=00,backColor,backR=00,backG=00,backB=00; private int currentForeColorId,currentBackColorId; /chapter Pattern pattern = Ppile(第1.+章1.+); Matcher matcher; List chap

15、terName = new ArrayList(); List chapterBeginPositions = new ArrayList(); Vector lines; int chapterNum = 0; private AlertDialog chapterDialog; private String currentChapterName = wu; private int currentBeginPosition = 0; Handler chapterHandler = new Handler() Override public void handleMessage(Messag

16、e msg) super.handleMessage(msg); if(msg.what = 0) / updateView(); showChapterDialog(); else if(msg.what = 1) chapterDialog.setMessage(正在提取章节,请稍后.n已发现章节:+chapterNum+ +currentChapterName); else if(msg.what = 2) mPageWidget.invalidate(); ; /pre and next chapter private String currentChapter; private in

17、t currentChapterIndex; private boolean preOrNext = true; Handler preHandler = new Handler() Override public void handleMessage(Message msg) super.handleMessage(msg); for(int i=0;i,currentChapterIndex+); break; if(currentChapterIndex=0) new AlertDialog.Builder(BookReadActivity.this).setTitle(提示).setM

18、essage(已是第一章!).setPositiveButton(确定, null).show(); else pagefactory.setM_mbBufBegin(chapterBeginPositions.get(currentChapterIndex-1); updateView(); ; Handler nextHandler = new Handler() Override public void handleMessage(Message msg) super.handleMessage(msg); for(int i=0;i,currentChapterIndex+); bre

19、ak; if(currentChapterIndex=(chapterName.size()-1) new AlertDialog.Builder(BookReadActivity.this).setTitle(提示).setMessage(已是最后一章!).setPositiveButton(确定, null).show(); else pagefactory.setM_mbBufBegin(chapterBeginPositions.get(currentChapterIndex+1); updateView(); ; Override public void onCreate(Bundl

20、e savedInstanceState) super.onCreate(savedInstanceState); resolver = getContentResolver(); requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); mPageWidget = new PageWidget(this); setContentView(mP

21、ageWidget); DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); screenWidth = dm.widthPixels; screenHeight = dm.heightPixels; mCurPageBitmap = Bitmap.createBitmap(screenWidth, screenHeight, Bitmap.Config.ARGB_8888); mNextPageBitmap = Bitmap .createBitmap(

22、screenWidth, screenHeight, Bitmap.Config.ARGB_8888); mCurPageCanvas = new Canvas(mCurPageBitmap); mNextPageCanvas = new Canvas(mNextPageBitmap); pagefactory = new BookPageFactory(screenWidth, screenHeight); pagefactory.setBgBitmap(BgUtil.getSuitableBg(this,screenWidth,screenHeight,R.drawable.read_bg

23、_3); try bookPath = getIntent().getExtras().getString(DbTags.FIELD_BOOK_PATH); bookName = getIntent().getExtras().getString(DbTags.FIELD_BOOK_NAME); bookId = getIntent().getExtras().getInt(DbTags.FIELD_BOOK_ID); bookProgress = getIntent().getExtras().getString(DbTags.FIELD_BOOK_PROGRESS); bookBeginP

24、osition = getIntent().getExtras().getInt(DbTags.FIELD_BOOK_BEGIN_POSITION); pagefactory.openbook(bookPath); if(bookProgress=null|bookProgress.equals(onlyRead) pagefactory.onDraw(mCurPageCanvas); System.out.println(1); else if(bookProgress.equals(begin) pagefactory.setM_mbBufBegin(getIntent().getIntE

25、xtra(begin, 0); updateView(); System.out.println(2); else pagefactory.setM_mbBufBegin(bookBeginPosition); System.out.println(3); updateView(); catch (IOException e1) e1.printStackTrace(); Toast.makeText(this, 电子书不存在!, Toast.LENGTH_SHORT).show(); mPageWidget.setBitmaps(mCurPageBitmap, mCurPageBitmap)

26、; mPageWidget.setOnTouchListener(new OnTouchListener() public boolean onTouch(View v, MotionEvent e) boolean ret=false; if(popupWindow=null|!popupWindow.isShowing() if (v = mPageWidget) if (e.getAction() = MotionEvent.ACTION_DOWN) mPageWidget.abortAnimation(); mPageWidget.calcCornerXY(e.getX(), e.ge

27、tY(); pagefactory.onDraw(mCurPageCanvas); if (mPageWidget.DragToRight() try pagefactory.prePage(); catch (IOException e1) e1.printStackTrace(); if(pagefactory.isfirstPage() / Toast.makeText(BookReadActivity.this, 已到第一页!, 200).show(); return false; pagefactory.onDraw(mNextPageCanvas); else try pagefactory.nextPage(); catch (IOException e1) e1.printStackTrace(); if(pagefactory.islastPage() / Toast.makeText(BookReadActivity.this, 已到最后一页!, 200).show(); re

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1