java - android动画使我已经通过代码使其不可见的项目可见

标签 java android animation

我有一个按钮设置为在 Activity 开始时消失,代码如下:

againbtn.setVisibility(View.INVISIBLE);

在另一个按钮内,我为不可见的按钮运行此动画:

Animation anim3 = AnimationUtils.loadAnimation(MainActivity.this, R.anim.againbtnonanim);
anim3.setFillAfter(true);
againbtn.startAnimation(anim3);

当这个动画运行时,我的隐形按钮出现了!!!为什么会这样呢?我不想要这个!我想要的是首先让它可见,然后它运行我的动画,如下所示:

againbtn.setVisibility(View.VISIBLE);    
Animation anim3 = AnimationUtils.loadAnimation(MainActivity.this, R.anim.againbtnonanim);
anim3.setFillAfter(true);
againbtn.startAnimation(anim3);

但它不起作用。 我的按钮出现时没有再次btn.setVisibility(View.VISIBLE);代码和我的动画使用以下代码使其不可见:againbtn.setVisibility(View.INVISIBLE);,但这也不起作用。

在这种情况下,当按钮通过动画不可见时,它的点击监听器仍然在该区域工作!有人可以帮我吗?

最佳答案

完成按钮点击后,使用android:visibility="gone"。它将被完全删除。该按钮使用的空间可以重复使用。当您只是说invisible时,您并没有删除该按钮,只是使其不可见。它仍然在那里消耗那个空间。

此外,对于您当前的代码,您可以只使用 android your_button_name.setEnabled(false) 这样 onclick 就不起作用。

关于java - android动画使我已经通过代码使其不可见的项目可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15698706/

相关文章:

c# - SecureRandom 漏洞也适用于 BouncyCaSTLe C#

java - 这段保存值对象的代码有什么问题?

java - 使用 LocalDate 和 period 计算日期之间的时间

java - Java中二维数组类型的ArrayList

android - 在 android studio 中找不到 SDK 位置

android - 如何更改警报对话框的位置

java - 使用 volley-android 获取 POST 的 HTTP 正文响应

wpf - 如何根据控件的属性(Top/Tabstop)设置WPF动画BeginTime

javascript - 我无法在 QML 中滑动屏幕动画

javascript - 在滚动条上移动垂直线