2011-12-01 54 views
6

我試圖自定義我的FragmentTransaction轉換,並且我遇到了setTransitionStyle方法。它需要一個XML樣式的資源ID,但我不知道xml資源會是什麼樣子。我知道你可以爲活動定義動畫樣式,並且我假設這個方法所需的xml是類似的,但我找不到所需格式的任何文檔(例如,使這個工作需要的xml屬性/節點)。Android FragmentTransaction setTransitionStyle

EDIT1(這是我現在在做我FragmentActivity什麼):

public void pushFolderFrag(Fragment folderFrag, String backStackID) { 
    FragmentTransaction transaction = getFragmentManager().beginTransaction(); 
    transaction.replace(R.id.SplitView_MasterContainer, folderFrag); 
    transaction.addToBackStack(backStackID); 
    transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE); 
    //transaction.setTransitionStyle(arg0);//what does the format for this resource look like?? 

    // Commit the transaction 
    transaction.commit(); 
} 
+1

它需要一個動畫對象,雖然它不是清楚什麼(我沒有深入到Android源深入)。以下工作,但沒有做任何事:'transaction.setTransitionStyle(android.R.attr.fragmentFadeExitAnimation);' – scorpiodawg

回答

1

我找到了答案此鏈接

https://github.com/kedzie/Support_v4_NineOldAndroids

轉變作風資源

在樣式資源指定過渡動畫。

創建樣式資源`RES /價值/ styles.xml」

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <!-- Override standard Transitions with a Style --> 
    <style name="MyTransitionStyle"> 
     <item name="fragmentFadeEnterAnimation">@animator/fade_enter</item> 
     <item name="fragmentFadeExitAnimation">@animator/fade_exit</item> 
     <item name="fragmentOpenEnterAnimation">@animator/flip_left_in</item> 
     <item name="fragmentOpenExitAnimation">@animator/flip_left_out</item> 
     <item name="fragmentCloseEnterAnimation">@animator/flip_right_in</item> 
     <item name="fragmentCloseExitAnimation">@animator/flip_right_out</item> 
    </style> 
</resources> 

指定交易的資源和過渡

tx.setTransitionStyle(R.style.MyTransitionStyle); 
tx.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN); 
相關問題