Found GoalMessage bug (textviews lacked after changing text): remedy = visibility of layout was not set to VISIBLE after animation started

This commit is contained in:
= 2017-11-26 16:09:03 +01:00
parent b954e14934
commit a9be279f12

View File

@ -1,7 +1,6 @@
package de.frajul.endlessroll.views;
import android.graphics.Typeface;
import android.view.KeyEvent;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
@ -12,7 +11,6 @@ import de.frajul.endlessroll.R;
import de.frajul.endlessroll.levels.Level;
import de.frajul.endlessroll.levels.LevelPack;
import de.frajul.endlessroll.main.GameActivity;
import de.frajul.endlessroll.main.GameLog;
import de.frajul.endlessroll.main.game.Game;
import de.frajul.endlessroll.main.screens.Screen;
@ -36,6 +34,7 @@ public class GoalMessage implements GoalMessageLevelButtonOnClickListener, View.
this.game = game;
this.gameActivity = gameActivity;
this.layout = layout;
layout.setVisibility(View.GONE);
Typeface typeface = gameActivity.getTypeface();
fadeIn = AnimationUtils.loadAnimation(gameActivity, R.anim.fade_in);
@ -56,36 +55,28 @@ public class GoalMessage implements GoalMessageLevelButtonOnClickListener, View.
public void fadeInWithDelay(final LevelPack levelPack, final Level level) {
this.levelPack = levelPack;
GameLog.i("Level: "+level.getId());
topBar.update();
restart.init(R.string.goal_message_restart_format_d, level);
boolean nextLevelVisible = !levelPack.isLastLevel(level);
nextLevel.setVisible(nextLevelVisible);
if (nextLevelVisible)
nextLevel
.init(R.string.goal_message_next_level_format_d, levelPack.getNextLevel(level));
gameActivity.runOnUiThread(new Runnable() {
layout.postDelayed(new Runnable() {
@Override
public void run() {
topBar.update();
restart.init(R.string.goal_message_restart_format_d, level);
boolean nextLevelVisible = !levelPack.isLastLevel(level);
nextLevel.setVisible(nextLevelVisible);
if (nextLevelVisible)
nextLevel
.init(R.string.goal_message_next_level_format_d, levelPack.getNextLevel(level));
layout.startAnimation(fadeIn);
layout.setVisibility(View.VISIBLE);
}
});
// layout.postDelayed(new Runnable() {
// @Override
// public void run() {
//
// }
// }, 500);
}, 500);
}
public boolean isVisible(){
public boolean isVisible() {
return layout.getVisibility() == View.VISIBLE;
}
public void prepareToBeShown(){
public void prepareToBeShown() {
topBar.update();
}
@ -108,8 +99,8 @@ public class GoalMessage implements GoalMessageLevelButtonOnClickListener, View.
gameActivity.startGame(levelPack, goalMessageLevelButton.getLevel());
}
public void onKeyBack(){
game.toLevelsScreen();
hide();
}
public void onKeyBack() {
game.toLevelsScreen();
hide();
}
}