如何在布局中制作从右到左的动画 [英] How to make a right to left animation in a layout

查看:89
本文介绍了如何在布局中制作从右到左的动画的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我涉及到幻灯片从右到左的问题。我通过单击按钮的隐藏和可见布局创建它。但是现在我想要一个动画,这样当我单击按钮时,将发生从右到左的动画,而当我再次单击按钮时,相同的布局将是从左到右的动画,并像幻灯片一样工作。

I am involved with a slide right to left problem. I created it by "hide" and "visible" layout on button clicked. But now I want an animation so that when I clicked on button, a "right to left" animation will happen and when I click again on button, same layout will be "left to right" animation and work as slide layout.

代码

final RelativeLayout rightlayout = (RelativeLayout) findViewById(R.id.relativelayout2);
rightlayout.setVisibility(View.GONE);

Button rightbtn = (Button) findViewById(R.id.righttoleft);

rightbtn.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        System.out.println("clickecd");
        if(keyright == 0) {
            //rightlayout.setVisibility(View.VISIBLE);
            keyright++;
            slideToLeft(rightlayout);

        } else
        {
            //rightlayout.setVisibility(View.GONE);
            TranslateAnimation animate = new TranslateAnimation(0,rightlayout.getWidth(),0,0);
            animate.setDuration(1000);
            animate.setFillAfter(true);
            rightlayout.startAnimation(animate);
            keyright--;
        }

    }
});

// To animate view slide out from left to right
public void slideToRight(View view){
TranslateAnimation animate = new TranslateAnimation(0,view.getWidth(),0,0);
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);

}
// To animate view slide out from right to left
public void slideToLeft(View view){
TranslateAnimation animate = new TranslateAnimation(0,-view.getWidth(),0,0);
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);

}

xml:

<RelativeLayout
    android:id="@+id/rightsidemenu"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/frameLayout1"
    android:gravity="right"
    android:orientation="vertical" >

    <Button
        android:id="@+id/righttoleft"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        android:background="@drawable/right_switcher_expanded" />

    <RelativeLayout
        android:id="@+id/relativelayout2"
        android:layout_width="50dp"
        android:layout_height="match_parent"
        android:layout_alignParentRight="true"
        android:layout_toRightOf="@+id/righttoleft"
        android:background="#EDEEF3"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:orientation="vertical"
            android:padding="5dp" >

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginTop="10dp"
                android:background="#ffffff"
                android:gravity="right"
                android:orientation="vertical" >

                <FrameLayout
                    android:id="@+id/titleframe"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="#F4F4F4"
                    android:orientation="horizontal" >

                    <TextView
                        android:id="@+id/firsttitle"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:text="Job and Qualification"
                        android:textColor="#56A91E" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/firstframe1"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/titleframe"
                    android:layout_margin="10dp"
                    android:orientation="horizontal" >

                    <TextView
                        android:id="@+id/textView81"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Highest qualification" />

                    <TextView
                        android:id="@+id/higesttxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="highest qualification" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/thirdff"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/firstframe1"
                    android:layout_margin="10dp" >

                    <TextView
                        android:id="@+id/textView10"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Occupation" />

                    <TextView
                        android:id="@+id/occupationtxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="occupation" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/thirdfff"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/thirdff"
                    android:layout_marginBottom="20dp"
                    android:layout_marginLeft="10dp"
                    android:layout_marginRight="10dp"
                    android:layout_marginTop="10dp" >

                    <TextView
                        android:id="@+id/textView100"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="CTC (Income)" />

                    <TextView
                        android:id="@+id/incometxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="income" />
                </FrameLayout>
            </RelativeLayout>

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginTop="10dp"
                android:background="#ffffff"
                android:gravity="right"
                android:orientation="vertical" >

                <FrameLayout
                    android:id="@+id/titleframe"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="#F4F4F4"
                    android:orientation="horizontal" >

                    <TextView
                        android:id="@+id/firsttitle"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:text="Family Info"
                        android:textColor="#56A91E" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/firstframe11"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/titleframe"
                    android:layout_margin="10dp"
                    android:orientation="horizontal" >

                    <TextView
                        android:id="@+id/textView811"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Have children" />

                    <TextView
                        android:id="@+id/havechildrntxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="have children" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/secondfff"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/firstframe11"
                    android:layout_margin="10dp" >

                    <TextView
                        android:id="@+id/textView91"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Father Alive" />

                    <TextView
                        android:id="@+id/fathrtxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="Father Alive" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/thirdfff"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/secondfff"
                    android:layout_margin="10dp" >

                    <TextView
                        android:id="@+id/textView101"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Mother Alive" />

                    <TextView
                        android:id="@+id/mothertxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="Mother alive" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/thirdffff"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/thirdfff"
                    android:layout_marginBottom="10dp"
                    android:layout_marginLeft="10dp"
                    android:layout_marginRight="10dp"
                    android:layout_marginTop="10dp" >

                    <TextView
                        android:id="@+id/textView103"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Brother" />

                    <TextView
                        android:id="@+id/brothercounttxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="Brother" />
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/thirdffff3"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/thirdffff"
                    android:layout_marginLeft="10dp"
                    android:layout_marginRight="10dp" >

                    <TextView
                        android:id="@+id/textView104"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Sister" />

                    <TextView
                        android:id="@+id/sistercounttxt"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="right"
                        android:text="Sister" />
                </FrameLayout>
            </RelativeLayout>
        </LinearLayout>
    </RelativeLayout>


推荐答案

此代码可能对您有帮助。

This code may be it help you.

动画左幻灯片:

    <translate xmlns:android="http://schemas.android.com/apk/res/android"
        android:duration="500"
        android:fromXDelta="100%"
        android:toXDelta="0%" >
    </translate>

动画右滑:

    <translate xmlns:android="http://schemas.android.com/apk/res/android"
        android:duration="500"
        android:fromXDelta="-100%"
        android:toXDelta="0%" >
    </translate>

用作:

Animation RightSwipe = AnimationUtils.loadAnimation(Screen.this, R.anim.right_swipe);
ScreenAnimation.startAnimation(RightSwipe);

这篇关于如何在布局中制作从右到左的动画的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆