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.
code
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>
Solution for those who are looking for right to left animation:
Solution for those who are looking for repeated animation (for eg. left to right and right to left)
You can also use
animate().translationXBy([n_pixels]f
).where
n_pixels] > 0
moves the object LTR,n_pixels] < 0
moves the object RTL.This code may be it help you.
Animation Left slide:
Animation Right slide:
Use it as:
Main layout and back layouts are two linear layouts, when click on button call the startanimation method.
AnimParams.java