基本上我正在开发电子书阅读Android应用程序,我需要页面卷曲动画。我试图通过使用https://github.com/harism/android-pagecurl但有2个问题来实现
1)当页面向后翻时,页面卷曲动画由于harism无法正常工作 例如:我浏览页面直到4,然后返回它加载页面4.如果我转到另一页面它应该加载第3页。而是它加载第5页。 之前曾问过同样的问题,但它提供了一些我已经尝试过的提示
Page-curl animation by harism not working properly when a page turns backwards
2)我正在使用TextView并创建Bitmap,我想滚动,作为文本视图 内容不适合屏幕,所以我不清楚我能否实现as 创建位图。
private Bitmap loadBitmap(int width, int height, int index) {
String text1, tittle;
Bitmap txtBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
if (txtArr == null || txtArr.length == tempArrIndex + 1) {
text1 = nitiinfoArrayList.get(pageindex).content;
txtArr = text1.split(Constant.strpattern);
pageCount = pageCount + txtArr.length;
pageindex++;
tempArrIndex = 0;
} else if (txtArr.length > 1) {
tempArrIndex++;
}
text1 = txtArr[tempArrIndex];
int margin = 7;
Rect r = new Rect(margin, margin, width - margin, height - margin);
Canvas c = new Canvas(txtBitmap);
Typeface ttf = Typeface.createFromAsset(context.getAssets(), "fonts/shruti.ttf");
TextView tv = new TextView(getApplicationContext());
tv.setText(text1);
tv.setTextColor(getResources().getColor(R.color.colorPrimaryDark));
tv.setTextSize(18);
tv.setTypeface(ttf);
tv.setGravity(Gravity.CENTER);
tv.layout(0, 0, getResources().getDisplayMetrics().widthPixels, getResources().getDisplayMetrics().heightPixels);
Paint p = new Paint();
p.setColor(getResources().getColor(R.color.chromelight));
c.drawRect(r, p);
tv.draw(c);
c.drawBitmap(txtBitmap, 0, 0, null);
return txtBitmap;
}
任何建议或任何其他解决方案都将非常感激。感谢
答案 0 :(得分:0)
你应该尝试deffinetly这个库
https://github.com/eschao/android-PageFlip
它有很酷的功能,这是最好的
之一您可以给出页面宽度从0到0.5f的比率来设置区域 reponsing click事件触发页面翻转。默认值为 0.5f,这意味着如果你点击屏幕的左半部分就会发生后退翻转,如果点击右半边就会开始向前翻转 单页模式下的屏幕。