2017-08-15 38 views
0

我有一個android項目,我的客戶要求我有一個類似於下圖的ViewPager。Android ViewPager - 如何一次顯示三個面板

enter image description here

顯示在時間3個面板。當前選定的面板將在中央顯示完整,在選定面板之前(如果存在)的面板將顯示一半,而選定面板之後的面板也將顯示爲一半。

你們有什麼想法如何做到這一點?在Android中還是一個新的東西,當它涉及到這種東西時,它會慢慢迷失方向?

這是我迄今爲止只會顯示一個面板的代碼。

ViewPager viewPagerShopPortfolio = (ViewPager) 
mShopPortfolioImageAdapter = new ShopPortfolioImageAdapter(getChildFragmentManager(), portfolioListingModelList); 
viewPagerShopPortfolio.setAdapter(mShopPortfolioImageAdapter); 

這就是我的應用現在的樣子,它只顯示一個面板。 enter image description here

回答

1

嘛,我發現這第二個解決方案使用下面的代碼:

XML:

<android.support.v4.view.ViewPager 
    android:id="@+id/viewPagerShopPortfolio" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:gravity="center" 
    android:clipToPadding="false" 
    android:paddingLeft="60dp" 
    android:paddingRight="60dp" 
    android:background="@color/colorFontWhite" /> 

的Java:

ViewPager viewPagerShopPortfolio = (ViewPager) view.findViewById(R.id.viewPagerShopPortfolio); 
viewPagerShopPortfolio.setPageMargin(30); 

這裏是以下結果:

enter image description here

0

你可以覆蓋getPageWidth方法PageAdapter。例如,返回0.7f讓所有子頁面只佔用ViewPager寬度的70%。

或者你可以使用庫:有關LIB也可以在[是] [2]答案找到

https://github.com/Pixplicity/MultiViewPager

更多信息。

+0

很好的答案。我將把它應用到我的項目中:P –

相關問題