AAAなブログ

あなたの求めているものは、ここにはない!

Android の View の setVisibility が効かない

view継承クラスの可視状態の制御ってこうやりますよね。

 

    view.setVisibility(View.VISIBLE)
view.setVisibility(View.INVISIBLE)
view.setVisibility(View.GONE)

 

基本中の基本です。

ところがAndroidで商売始めて10年近い私が、なんとこれにハマってしまいました・・・


GONEしても消えない!

 

表示されたまま。

 

スレッド?

フォーカス?

仕様変わった?

10分間ググってもなかなか分からず。

 

 

で結局、私のプロジェクトでの原因は・・・アニメーションでした。

 

view # setAnimation してるんですが、このAnimationの fillAfter が true となっていたのが原因。

 

対処方法

Animation の fillAfter を falseにする。

fillAfterがtrueでなきゃダメな場合は、 view # clearAnimation してやってもok