2017-02-20 2 views
0

У меня есть AuthorizationActivity с 3-мя сценами, которые представляют собой просто другое количество полей, поэтому когда пользователь приходит на Activity, сначала начинается «Splash scene», с 2 кнопками (Войдите, зарегистрируйтесь), нажав на каждого пользователя, вы увидите ту же активность, но разные сцены. Нажимая на кнопку «Назад», я меняю сцену, например, если пользователь на входе, назад щелкните -> измените сцену, чтобы всплеск.Android Scenes & Transitions, логика не работает после первой сцены

А теперь у меня есть проблема, когда он в впервые пошел Вход, набрав текст (проверки работы, логические работы, все это круто), то он решает вернуться, и возвращайся для входа в аккаунт (логика нарушается, проверка не работает, все плохо)

памяти растет, так что я думаю, что проблема является несколько объектов сцены, потому что если я на все и зарегистрировались поля заполнены правильно отладить показывает, что моя модель пуста. Я признателен за любую помощь)

идти SignUp

fun goSignUpTransition(v: View) { 
     TransitionManager.beginDelayedTransition(rootContainer_AS, changeBounds) 
     back.isClickable = true 
     splashSceneFields.sceneRoot.visibility = View.GONE 
     val layoutParams = innerArcContainer_SSM.layoutParams 
     layoutParams.height = signUpHeaderHeight 
     innerArcContainer_SSM.layoutParams = layoutParams 

     val pp = localRoot.layoutParams as LinearLayout.LayoutParams 
     pp.topMargin = signUpMargin 

     this.signUpContainer.visibility = View.VISIBLE 
     this.signUpContainer.animate().alpha(1f).start() 
     this.wellaLogo_SA.visibility = View.GONE 
     this.wellaLogo_SA.animate().alpha(0f).start() 
     this.title_SSM.text = getString(R.string.sign_up_text) 

     val alpha = this.toolbarControllers_SSM.animate().alpha(1f) 
     alpha.duration = ANIM_DURATION 
     alpha.start() 

     TransitionManager.go(signUpScene) 
     splashSceneFields.sceneRoot.visibility = View.VISIBLE 

    } 

вернуться

fun goSplashTransition(v: View) { 
    galleryBottomSheet.photoURI = null 
    userPhoto_SSM.setImageResource(R.drawable.ic_photo_upload_white_big) 

    TransitionManager.beginDelayedTransition(rootContainer_AS, changeBounds) 
    splashSceneFields.sceneRoot.visibility = View.GONE 

    val layoutParams = innerArcContainer_SSM.layoutParams 
    layoutParams.height = preAnimDimension 
    innerArcContainer_SSM.layoutParams = layoutParams 

    val pp = localRoot.layoutParams as LinearLayout.LayoutParams 
    pp.topMargin = 0 

    val animator = wellaLogo_SA.animate() 
    animator.scaleX(1f).scaleY(1f).duration = ANIM_DURATION 
    animator.start() 

    val alpha = this.toolbarControllers_SSM.animate().alpha(0f) 
    alpha.duration = ANIM_DURATION 
    alpha.start() 

    this.signUpContainer.animate().alpha(0f).start() 
    this.signUpContainer.visibility = View.GONE 
    this.wellaLogo_SA.visibility = View.VISIBLE 
    this.wellaLogo_SA.animate().alpha(1f).start() 


    TransitionManager.go(splashSceneFields) 
    back.isClickable = false 
    splashSceneFields.sceneRoot.visibility = View.VISIBLE 
} 
+0

добавьте еще код, в котором вы переключаетесь между сценами – arjun

+0

@aju, я переключаюсь в общем, как показано выше, все просто –

+0

@aju, я добавил, что он находится на Kotlin –

ответ

0

Найдено решение самостоятельно, каждый раз, когда сцены приходит, я должен был найти все мои взгляды снова установить слушателей и скоро. У сцены есть setEnterAction, где вы хотите связать пользовательский интерфейс или обновить свою модель (это я должен был делать) и setExitAction, если у вас есть что-то, что вы должны выпустить/очистить/обновить, сделайте это там.

Смежные вопросы