2015-12-01 48 views
9

我的應用程序的最低版本是10 和到現在我使用的片段問題取出supportV4庫時

現在,我要爲幾個片段過渡 添加翻轉動畫所以按照Android的引導支持庫我們需要使用該動畫製作器來支持這個動畫,並且它支持api level 11,這對我來說不是問題。

而且還需要使用getFragmentManager代替getSupportFragmentManager

所以我刪除支持庫改變了我的最低版本10到11的錯誤是來

,因爲在我的應用我有FragmentTabhostgetChildFragmentManager()FragmentTabHost僅適用於支持庫,並使用getChildFragmentManager設置FragmentManager它不會允許我這樣做,因爲它需要API級別17

任何幫助表示讚賞。 讓我知道你是否需要更多的細節

在此先感謝。

+1

我不明白你的目標是支持API版本11及以上版本。請在第一句後更清楚地說明。 –

+1

我認爲如果您發佈示例代碼,重要的相關代碼會更好。您可以在Github上發佈代碼並提供鏈接。此時,我認爲爲您提供動畫示例項目是最容易的。你只對翻轉動畫感興趣嗎? –

+1

@TheOriginalAndroid是的,我正在尋找翻轉動畫,但需要它與支持庫,如果我刪除支持庫,它會創建更多的問題,因爲我告訴FragmentTabHost和getChildFragmentManager和其他sttuf – Sandy

回答

3

自定義動畫也與支持片段管理器一起使用。您將能夠使用支持片段管理器並仍然爲其設置動畫。

+0

使用支持片段它需要動畫資源urce從動漫文件夾只有 而我們需要使用動畫片翻轉,所以需要創建動畫文件夾 – Sandy

4

我認爲編寫API級別10及以下的動畫是具有挑戰性的,而且已經過時了。我可以給出一個建議,閱讀網頁@NineOldAndroids from the active developer Jake Wharton。它支持Android 1.0及更高版本,但不贊成使用新的Android庫。所以有一個教訓是,創建一個新項目會更容易,基本上是重新開始而不是轉換代碼。

即使您確實使用ValueAnimator之類的現有動畫,API級別也是11以上。您正在爲動畫創建10級和11級之間的邊界。

祝你好運,並保持我們的發佈。

+0

是的,我已創建新的應用程序與最小版本11現在我已經添加翻轉動畫與新的動畫API使用動畫師現在我想要在應用上添加底部的選項卡,它需要'FragmentTabHost',只有在支持庫中可用我已經做了解決方法,也直接複製'FragmentTabHost'類到應用程序,但現在我必須使用getChildFragmentManager,因爲它需要是來自api 17,如果我想使它支持從11然後強制完全需要使用支持庫,如果使用支持,我不能做翻轉動畫,讓我再次 – Sandy

5
在您的項目

android.support.v4.fragment的android.app片段,而不是使用,你可以使用下面的代碼片段的動畫,同時增加/更換片段

getSupportFragmentManager().beginTransaction() 
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) 
.replace(R.id.fragment, new FragmenntTwo()) 
.commit(); 

其中FragemntTwo()是你是inflating.Here您可以通過更換setTransition(..)與setCustomAnimations(..)

+1

然後請建議我怎麼做翻轉動畫在片段轉換 – Sandy

2

對於FragmentTabhost使用custome動畫以及片段,我用來建立一個程序,app.Fragment,但突然我的下午告訴我他想用ViewPager + Fragment。我做的是從v4.jar複製FragmentPagerAdapter.class,並用app.Fragment替換所有這些v4.Fragment。我認爲這可能會對您有所幫助。 和getChildFragmentManager()@SuppressLint("NewApi")可能會幫助你。

+0

但@SuppressLint(「NewApi」)只會隱藏錯誤,但它不會工作較低的API版本,然後17讓我糾正如果我錯了 – Sandy