(एंड्रॉयड 2.2 और इसके बाद के संस्करण पर) अगले एनीमेशन बनाने के लिए की आवश्यकता है नीचे से ऊपर (उसे फिर से क्लिक करने के बाद)।नीचे करने के लिए शीर्ष का अनुवाद एनीमेशन
पहला एनीमेशन ठीक काम करता है, लेकिन दूसरा नहीं, बीटीएन नीचे "ऊपर" से ऊपर और ऊपर नहीं जाता है।
कोड:
public class MainActivity extends Activity {
static RelativeLayout relativeLayout;
static Button btn;
static Boolean isUp = true;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.button1);
relativeLayout = (RelativeLayout) findViewById(R.id.relative_layout);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if(isUp){
isUp = false;
v.startAnimation(MainActivity.getVerticalSlideAnimation(0,relativeLayout.getBottom() - v.getHeight(),500,0));
}else{
isUp = true;
v.startAnimation(MainActivity.getVerticalSlideAnimation(relativeLayout.getBottom() - v.getHeight(),0,500,0));
}
}
});
}
public static Animation getVerticalSlideAnimation(int fromYPosition, final int toYPosition, int duration, int startOffset)
{
TranslateAnimation translateAnimation = new TranslateAnimation(1, 0.0F, 1, 0.0F, 0, fromYPosition, 0, toYPosition);
translateAnimation.setDuration(duration);
translateAnimation.setInterpolator(new AccelerateInterpolator());
translateAnimation.setStartOffset(startOffset);
//Stop animation after finishing.
//translateAnimation.setFillAfter(true);
translateAnimation.setAnimationListener(new AnimationListener()
{
public void onAnimationStart(Animation animation) { }
public void onAnimationRepeat(Animation animation) { }
public void onAnimationEnd(Animation animation) {
btn.setY(toYPosition);
}
});
return translateAnimation;
}
}
लेआउट:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/relative_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="Button" />
</RelativeLayout>
यह वास्तव में मददगार .मैं है पता है कि कैसे लगातार और अपनी स्थिति को हर बार हो रही ऊपर से नीचे तक एक दृश्य स्थानांतरित करने के लिए चाहता हूँ कि यह प्रत्येक चरण से अगले चरण तक चलता है। एनीमेशन का उपयोग करके इसे कैसे कार्यान्वित करें? क्या उनकी कोई अन्य विधि उपलब्ध है? मेरा अंतिम उद्देश्य एक चलती दृश्य और इस दृश्य के बीच टकराव का पता लगाने के लिए है? सहायता – Ajay