Виждал съм този въпрос:
Променяте ли анимацията за скриване на ActionBar?
Но не се казва дали е възможно да се деактивира напълно анимацията.
Виждал съм този въпрос:
Променяте ли анимацията за скриване на ActionBar?
Но не се казва дали е възможно да се деактивира напълно анимацията.
Сега можете да направите това,
getSupportActionBar().setShowHideAnimationEnabled(false);
Поправих, използвайки метода по-долу:
public static void disableShowHideAnimation(ActionBar actionBar) {
try
{
actionBar.getClass().getDeclaredMethod("setShowHideAnimationEnabled", boolean.class).invoke(actionBar, false);
}
catch (Exception exception)
{
try {
Field mActionBarField = actionBar.getClass().getSuperclass().getDeclaredField("mActionBar");
mActionBarField.setAccessible(true);
Object icsActionBar = mActionBarField.get(actionBar);
Field mShowHideAnimationEnabledField = icsActionBar.getClass().getDeclaredField("mShowHideAnimationEnabled");
mShowHideAnimationEnabledField.setAccessible(true);
mShowHideAnimationEnabledField.set(icsActionBar,false);
Field mCurrentShowAnimField = icsActionBar.getClass().getDeclaredField("mCurrentShowAnim");
mCurrentShowAnimField.setAccessible(true);
mCurrentShowAnimField.set(icsActionBar,null);
}catch (Exception e){
//....
}
}
}
Ако използвате ActionBarSherlock, можете да го направите. Вижте клас ActionBarImpl, той има метод setShowHideAnimationEnabled(boolean enabled).
com.actionbarsherlock.internal.app.ActionBarImpl
е дете на com.actionbarsherlock.app.ActionBar
Бихте ли ни дали вашия пример за setShowHideAnimationEnabled(boolean)
, моля?
- person Maksim Dmitriev; 21.11.2014
NoActionBar
вариант, ако изобщо нямате нужда от лентата за действия. - person ebarrenechea   schedule 27.02.2013