Android在动态视图中仅获得一次动画效果

Posted

技术标签:

【中文标题】Android在动态视图中仅获得一次动画效果【英文标题】:Android getting animation effect only once in dynamic view 【发布时间】:2012-02-11 07:01:39 【问题描述】:

我正在膨胀一个视图并将视图放在另一个视图下方,一切都很好,但动画只是以所需的方式出现......当我再次按下按钮以放置视图时,它并没有按照它出现的方式出现第一次。

HERE IS THE VIDEO

    final Animation a3 = new AlphaAnimation(0.00f, 1.00f);
    a3.setDuration(350);

    LayoutInflater vi = (LayoutInflater) getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    final View cv = vi.inflate(R.layout.popupview, null);

    final RelativeLayout rl = (RelativeLayout)findViewById(R.id.mainlayout);
    final Button b1 = (Button)findViewById(R.id.button1);
    b1.setOnClickListener(new OnClickListener() 
        public void onClick(View arg0) 


            if(cv!=null)
                rl.removeView(cv);
            

            RelativeLayout.LayoutParams innerLP = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
            cv.setLayoutParams(innerLP);

            RelativeLayout.LayoutParams params1 = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
            params1.addRule(RelativeLayout.BELOW, b1.getId());
            cv.setLayoutParams(params1);

            cv.startAnimation(a3);
            rl.addView(cv);
            rl.invalidate();            

        
    );

【问题讨论】:

youtube.com/watch?v=-04vsTG3Zeg&feature=youtu.be 【参考方案1】:

我之前也遇到过同样的问题....You can check my post

它会在按下一次时开始动画..但是如果你想重新开始动画那么你应该让它停止。

【讨论】:

以上是关于Android在动态视图中仅获得一次动画效果的主要内容,如果未能解决你的问题,请参考以下文章

TextViews 在 Android 4 上仅动画一次

我想为 setVisibility 上的视图设置动画,但它仅第一次工作

我想在setVisibility上制作动画视图,但它仅适用于第一次

带有波纹动画的Android自定义视图边缘裁剪

如何放大并返回动画android?

在 iOS 中仅沿路径的一部分为视图设置动画