Intereting Posts
Как проверить, является ли действие последним в стеке действия для приложения? Как настроить TextView внутри Spinner? Панель инструментов, не отображаемая с внутренней панели сворачивания Как извлечь значения из пакета в Android Smack «Нет ответа с сервера». Не знаю, почему я получаю эту ошибку Преобразование из формата Long to date Как настроить диалоговое окно виджета PlaceAutocomplete для списка мест Android всеобъемлющей отказоустойчивой музыкальной службы на нескольких мероприятиях Как получить 7 и 10-дюймовые планшетные эмуляторы? Изменение цвета базовой линии EditText на основе его фокуса в android Вызов Gradle «успешно завершается с 1 ошибкой» на Ubuntu 13.10 Добавить текст в файл в android программно Возможно ли заставить пользователей более старых версий приложений обновляться? Как реализовать макет карты в android WebView clearHistory () в функции web-браузера canGoback ()?

Анимация и setVisibility

У меня есть LinearLayout, что я хочу показать / скрыть, щелкнув ссылку «подробнее». Я делаю это, позвонив

moreDetailsSection.setVisibility(View.VISIBLE); 

или

 moreDetailsSection.setVisibility(View.GONE); 

Показать / скрыть его. Это отлично работает, но я хотел добавить анимацию, которая делает поля макета слайдами красиво, но это выполняется только в первый раз, когда поле становится видимым, если я его скрою и снова покажу, поле просто появляется внезапно , Вот код анимации (moreDetailsSection – это макет, о котором идет речь):

  AnimationSet set = new AnimationSet(true); Animation animation = new AlphaAnimation(0.0f, 1.0f); animation.setDuration(250); set.addAnimation(animation); animation = new TranslateAnimation( Animation.RELATIVE_TO_SELF, 1.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f ); animation.setDuration(150); set.addAnimation(animation); LayoutAnimationController controller = new LayoutAnimationController(set, 0.25f); moreDetailsSection.setLayoutAnimation(controller); 

Любые советы о том, как сделать этот запуск? В какое-то время я показываю макет и не только в первый раз?

Solutions Collecting From Web of "Анимация и setVisibility"

Я предполагаю, что theDetailsSection сначала НЕВИДИМО. Вам просто нужно создать объект Animation и вызвать следующий код при нажатии ссылки на более подробную информацию.

 moreDetailsSection.startAnimation(animation); moreDetailsSection.setVisibility(View.VISIBLE); 

Вы можете использовать эту строку в своем представлении для этого макета:

 android:animateLayoutChanges="true"