Исчезновение текущего вида деятельности - PullRequest
4 голосов
/ 16 июля 2011

Я хочу, чтобы вид моей активности исчезал при нажатии на кнопку. Я поместил код анимации в OnClickListener () кнопки, но затухание не происходит. Таким образом, есть какая-нибудь идея, как мне справиться с исчезновением текущего вида деятельности при нажатии кнопки? Заранее спасибо .....

На самом деле, моя цель заключается в том, чтобы в моем приложении при запуске действия вид этого действия исчезал, а по окончании действия вид исчезал, а затем вид нового действия исчезал. Ниже давая мой код, пожалуйста, нужна помощь, чтобы выяснить проблему там .....

public class First extends Activity {

Animation slide;
View view;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    view = (View) findViewById(android.R.id.content);

    slide = AnimationUtils.loadAnimation(this, R.anim.fade_in);
    view.startAnimation(slide);

    Button btn = (Button) findViewById(R.id.retour);
    btn.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {

                Intent intent = new Intent(v.getContext(),Second.class);
                slide = AnimationUtils.loadAnimation(First.this, R.anim.fade_out);
                view.startAnimation(slide);
                Test.group.replaceContentView("Second", intent, 0);

            }
    });

}

}

Ответы [ 2 ]

8 голосов
/ 16 июля 2011

В вашем методе onCreate () добавьте что-то вроде этого:

    final Button button = (Button) findViewById(R.id.button);
    button.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {

            final View l = findViewById(R.id.main);

            Animation a = AnimationUtils.loadAnimation(
                    YourActivity.this, android.R.anim.fade_out);
            a.setDuration(200);
            a.setAnimationListener(new AnimationListener() {

                public void onAnimationEnd(Animation animation) {
                        // Do what ever you need, if not remove it.  
                }

                public void onAnimationRepeat(Animation animation) {
                        // Do what ever you need, if not remove it.  
                }

                public void onAnimationStart(Animation animation) {
                        // Do what ever you need, if not remove it.  
                }

            });
            l.startAnimation(a);
        }
    });

, и ваш XML-файл Layout должен начинаться с View с id = "@ + id / main" и содержать кнопку с id = "@ + id / button "

Пример:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical"
     android:id="@+id/main"
     android:drawingCacheQuality="high"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent">
.....

    <Button
        android:id="@+id/button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
                    android:text="Fade out">
    </Button>
1 голос
/ 16 июля 2011

Пожалуйста, попробуйте следующий код.

Button btn = (Button) findViewById(R.id.retour);
    btn.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent intent = new Intent(v.getContext(),Second.class);
            startActivity(intent);
            overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);
        }
   });

может быть полезным для вас.

...