簡單的問題,有沒有ViewPager.PageTransformer動畫頁面捲曲效果?ViewPager頁面捲曲
我一直在到處找,但我無法找到它,就真的不知道如何實現它自己...提前
感謝, 塞德里克
簡單的問題,有沒有ViewPager.PageTransformer動畫頁面捲曲效果?ViewPager頁面捲曲
我一直在到處找,但我無法找到它,就真的不知道如何實現它自己...提前
感謝, 塞德里克
我覺得@塞德里克是正確的—它可能不值得。
所以我設法讓這個工作,但有很多醜陋的地方在那裏。
軟件體系結構中有一些膠帶。因爲頁面轉換器只能處理視圖,所以應用程序依賴於使用可以處理繪製頁面捲曲的自定義佈局。因此,變壓器是這樣的:
public static class PageCurlPageTransformer implements PageTransformer {
@Override
public void transformPage(View page, float position) {
Log.d(TAG, "transformPage, position = " + position + ", page = " + page.getTag(R.id.viewpager));
if (page instanceof PageCurl) {
if (position > -1.0F && position < 1.0F) {
// hold the page steady and let the views do the work
page.setTranslationX(-position * page.getWidth());
} else {
page.setTranslationX(0.0F);
}
if (position <= 1.0F && position >= -1.0F) {
((PageCurl) page).setCurlFactor(position);
}
}
}
}
爲了得到逼真的翻頁顯示,你必須使用Canvas.clipPath
。在模擬器上進行測試時,我無法將其修剪到實際路徑。我不得不在設備上進行測試,看看clipPath
是否正常工作。即使關閉硬件加速在模擬器上也不起作用。這讓我低下了自信,這種看法一直都在所有設備上。
我剛在自定義佈局中繪製了帶有dispatchDraw
的冰壺角。這可能不是最好的地方。如果我花更多的時間,我可能會在視圖尋呼機中有一個特殊的裝飾視圖,並繪製捲曲。
您可能會注意到反向分頁比分頁轉發快。您可能不喜歡正向或反向的動畫速度。太糟糕了— ViewPager
沒有任何方法來調整投擲速度,所以你得到你所得到的。這是使用ViewPager
這種事情的另一個限制。
你可以看一下我的項目作爲證據的概念,你確實可以得到一個頁面捲曲以期尋呼機和頁面轉換工作。希望這會給你你需要在你的項目中實現它的東西。
項目是在這裏:https://github.com/klarson2/PageCurlWithPageTransformer
乾杯
你的curlview很獨特。 –
感謝您的努力,但我希望它像photobook(專輯)。 –
不過,這太棒了。 –
您可以顯示一些圖像,這樣我可以爲您提供上查看傳呼機確切的動畫? –
你可以使用這個庫來製作查看尋呼機中的動畫效果:https://github.com/MysticTreeGames/android-page-curl –
是的,我做了一個視頻:) https://goo.gl/photos/ZqnDLttcdUDNyFtz5這可能很難實現,但我認爲很多人都在搜索此 –