我想在ViewPagerViewPager - 獲取下一個頁面
的第一個片段(藍色)來實現,這是顯示和必須顯示以及下一個片段開始的局部視圖,因此用戶瞭解他可以輕掃以切換視圖。 這個想法是以編程方式向左滾動屏幕的20%。
有什麼想法,歡迎
編輯:這正是我需要到:中央視圖需要兩方重疊側視圖
我想在ViewPagerViewPager - 獲取下一個頁面
的第一個片段(藍色)來實現,這是顯示和必須顯示以及下一個片段開始的局部視圖,因此用戶瞭解他可以輕掃以切換視圖。 這個想法是以編程方式向左滾動屏幕的20%。
有什麼想法,歡迎
編輯:這正是我需要到:中央視圖需要兩方重疊側視圖
您可以嘗試添加以下內容到PageAdapter:
public float getPageWidth(int position) {
if (position == 0 || position == 2) {
return 0.8f;
}
return 1f;
}
嘗試使用負值爲ViewPager.setPageMargin 。
可以工作,但會導致片段重疊 - 如果這是最好的修復方法,那麼請確保您的頁面足夠瘦以便使用它。 – edthethird 2012-03-29 02:53:15
感謝AdamK,這隻能部分解決我的問題,因爲我需要做的比這更多。我已經更新了這個問題,你有想法嗎? – znat 2012-03-29 14:10:31
@zylootino - 不幸的是我不認爲一個標準的ViewPager能夠完成你的更新版本。您需要通過擴展ViewPager來自定義構建它,這將是一項更復雜的任務。我不知道從哪裏開始抱歉。 – AdamK 2012-03-29 21:02:10
此功能(反正我)的工作比答案標記爲正確的。
@Override
public float getPageWidth(int position) {
return 0.9f;
}
只需將它放在您的自定義PagerAdapter
類中。
它是在接受的答案完全一樣的方法... – znat 2014-06-05 23:12:49
請參閱功能的內容 - 接受的答案沒有爲我工作,這一個。 – 2014-06-06 00:20:06
viewpager.setClipToPadding(false);
viewpager.setPageMargin(-50);
@Juizas:我也面臨同樣的問題,它工作正常。謝謝。但我有一些動態視圖,我需要顯示前後頁面的每個視圖,它只能讓右側的孩子只能看到它。我嘗試了很多方法,請幫助解決這個問題。像這個https://gist.github.com/devunwired/8cbe094bb7a783e37ad1,但它需要時間來加載視圖 – Pinki 2013-04-25 14:08:05
@Praveena,如果getPageWidth()不能正常工作,您可能需要尋找替代解決方案。也許使用setPageMargin的負值。也許將ViewPager源代碼添加到您的項目並進行修改。 – 2013-04-25 14:14:40