#android #android-animation
#Android #android-анимация
Вопрос:
Я скачал данный пример приложения для анимации с developer.android. В crossfadeActivity я наткнулся на следующий фрагмент кода. Может кто-нибудь, пожалуйста, объясните мне подробно, что означают эти строки кода?
final View showView = contentLoaded ? mContentView : mLoadingView;
final View hideView = contentLoaded ? mLoadingView : mContentView;
Комментарии:
1. возможно, вы захотите освежить свой Java
2. @user3559063 Есть какие-либо отзывы о том, понимаете вы или нет?
Ответ №1:
Они создают View
объекты, которые нельзя переназначить позже (это то, что final
делает ключевое слово). Если переменная contentLoaded
имеет значение true, то для представлений устанавливается первый вариант (либо mContentView
для ShowView, либо mLoadingView
для hideView), а если он равен false, то они присваиваются противоположным.
Первая строка: если contentLoaded
значение true, то установите для объекта showView
значение to mContentView
. Если contentLoaded
значение равно false, установите для объекта showView
значение to mLoadingView
.
Вторая строка следует той же логике. Посмотрите на троичный оператор Java здесь или здесь или здесь .