Как я могу достичь анимации Flip Book в Android?

В основном я занимаюсь разработкой приложения для чтения электронных книг на Android, где мне нужна анимация скручивания страниц. Я пытался добиться с помощью https://github.com/harism/android-pagecurl но у меня 2 проблемы

1) Анимация скручивания страницы с помощью harism не работает должным образом, когда страница переворачивается назад. Например: я просматриваю страницы до 4, затем возвращаюсь, чтобы загрузить страницу 4. Если я перехожу на другую страницу назад, она должна загружать страницу 3. Вместо этого она загружает страница 5 та же проблема была задана ранее, но она дает некоторые советы, которые я уже пробовал

Страница Android Curl Animation от Harism показывает несогласованность в обратном подсчете индекса в методе getBitmap() CurlActiviy()?

Анимация скручивания страницы с помощью harism не работает должным образом, когда страница переворачивается назад

2) Я использую TextView и создаю растровое изображение, и мне нужна прокрутка, так как содержимое Text View не помещается на экране, поэтому я не уверен, смогу ли я достичь как
создание растрового изображения.

 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;
    }

Любые предложения или любые другие решения будут очень благодарны. Спасибо

1 ответ

Вы должны попробовать эту библиотеку deffinetly

https://github.com/eschao/android-PageFlip

Он имеет действительно интересные функции, и это один из лучших

Вы можете задать соотношение ширины страницы от 0 до 0,5f, чтобы задать область для ответа на событие клика, чтобы вызвать переворот страницы. Значение по умолчанию - 0,5f, что означает, что обратный переворот произойдет, если вы нажмете левую половину экрана, и прямой переворот начнется, если вы нажмете правую половину экрана в одностраничном режиме.

Другие вопросы по тегам