【问题标题】:Set animation YDelta in Java class?在Java类中设置动画YDelta?
【发布时间】:2015-08-24 16:58:57
【问题描述】:

我正在我的列表视图中运行动画,我想知道如何在我的 java 类中设置 xml 属性 yDelta。它取决于当前行的大小,所以我不能使用单个值。这是我的动画代码

<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
    android:fromYDelta="20%p"
    android:toYDelta="20"
    android:duration="@android:integer/config_mediumAnimTime"/>
<alpha android:fromAlpha="1.0" android:toAlpha="1.0"
    android:duration="@android:integer/config_mediumAnimTime" />

这是我的java代码

public void updateDataList(ArrayList<HashMap<String, String>> newList){
    final ArrayList<HashMap<String, String>> newListAdd = newList;

        Animation anim = AnimationUtils.loadAnimation(
                liveStreamFragment.getActivity(), R.anim.top_to_down
        );

        anim.setDuration(2000);
        list.startAnimation(anim);

        new Handler().postDelayed(new Runnable() {

            public void run() {

                oslist.clear();
                oslist.addAll(newListAdd);
                LiveAdapter.this.notifyDataSetChanged();

            }

        }, anim.getDuration());

}

【问题讨论】:

    标签: java android xml listview animation


    【解决方案1】:

    根据this 文档,您可以在构造函数中设置它:

    TranslateAnimation translate = new TranslateAnimation(fromXDelta, toXDelta, fromYDelta, toYDelta);
    

    也检查this类似的问题。

    【讨论】:

    • 请提供更多信息,而不仅仅是代码的 sn-p,即解释您的答案、为什么您的答案是正确答案、可能是指向某些文档的链接等。
    猜你喜欢
    • 2012-03-07
    • 2022-08-19
    • 1970-01-01
    • 2012-09-23
    • 2020-03-16
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 2011-08-11
    相关资源
    最近更新 更多