单击或点击“编辑文本”时如何显示和反转我的动画?

How to show and reverse my animation when Edit Text is clicked or tapped?

我的视图有 3 个项目,EditTextImageViewTextView。现在我正在根据一个工作正常的教程做一些动画,现在在那个教程中那个人正在使用 onClickListener 来动画视图和隐藏图像,并且工作正常,但我的问题是,我想显示图像当用户不再使用 EditText 时。

没错,这个想法就是这样运作的

单击 EditText => 将设置动画并隐藏图像 => 当您点击或单击 layout/activity/view/etc 时。图像不会卷土重来。

代码:

    btnInvite.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            titleInvite.animate().translationY(-350).setDuration(800).setStartDelay(100).start();
            subtitleInvite.animate().translationY(-350).setDuration(800).setStartDelay(100).start();
            inputInvite.animate().translationY(-350).setDuration(800).setStartDelay(200).start();
            btnInvite.animate().alpha(1).translationY(-350).setDuration(800).setStartDelay(300).start();
            imageView.startAnimation(disapear);
            imageView.setVisibility(View.INVISIBLE);

        }
    });

这就是当有人点击 EditText 时会发生的情况,现在我想在编辑文本不再聚焦或点击其他内容时反转它。我也在使用 API 17,我告诉这个 bcs 我研究了一些功能,但其中大部分功能无法在 17 中使用。

您需要添加一个侦听器以在 editText 上失去焦点,在该侦听器中执行反向动画。

EditText txtEdit = (EditText) findViewById(R.id.edittxt);
txtEdit.setOnFocusChangeListener(new OnFocusChangeListener() {
  @Override public void onFocusChange(View v, boolean hasFocus) {
    if (!hasFocus) { 
      // Execute reverse animation
    } 
  } 
});