Менять макет с помощью слайд-анимации? - PullRequest
2 голосов
/ 29 августа 2011

Я пытаюсь изменить макет в Android, как анимация перехода слайдов. Как это сделать? У меня есть четыре макета, эти четыре должны меняться с помощью кнопок, таких как анимация перехода слайдов Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 29 августа 2011

Вы можете сделать это двумя способами,

1) Объявите все свои 4 действия в манифесте. XML и используйте Intent, которого вы можете достичь с помощью Intent

Смотрите это,

http://marakana.com/forums/android/examples/65.html

2) Вы также можете использовать Viewflipper для этого и, поскольку у вас есть 4 вида, вы можете использовать flipper.setDisplayChild (). смотри здесь

    ViewFlipper flipper;

private Animation inFromTopAnimation() {

Animation inFromTop = new TranslateAnimation(
Animation.RELATIVE_TO_PARENT,  0.0f, Animation.RELATIVE_TO_PARENT,  0.0f,
Animation.RELATIVE_TO_PARENT,  -1.0f, Animation.RELATIVE_TO_PARENT,   0.0f
);
inFromTop.setDuration(1000);
inFromTop.setInterpolator(new AccelerateInterpolator());
return inFromTop;
}
private Animation outToBottomAnimation() {
Animation outtoBottom = new TranslateAnimation(
  Animation.RELATIVE_TO_PARENT,  0.0f, Animation.RELATIVE_TO_PARENT,  0.0f,
  Animation.RELATIVE_TO_PARENT,  0.0f, Animation.RELATIVE_TO_PARENT,  +1.0f
);
outtoBottom.setDuration(1000);
outtoBottom.setInterpolator(new AccelerateInterpolator());
return outtoBottom;
}

private Animation outToTopAnimation() {
Animation inFromTop = new TranslateAnimation(
Animation.RELATIVE_TO_PARENT,  0.0f, Animation.RELATIVE_TO_PARENT,  0.0f,
Animation.RELATIVE_TO_PARENT,  +1.0f, Animation.RELATIVE_TO_PARENT,   0.0f
);
inFromTop.setDuration(1000);
inFromTop.setInterpolator(new AccelerateInterpolator());
return inFromTop;
}
private Animation outFromBottomAnimation() {
Animation outFromBottom = new TranslateAnimation(
  Animation.RELATIVE_TO_PARENT,  0.0f, Animation.RELATIVE_TO_PARENT,  0.0f,
  Animation.RELATIVE_TO_PARENT,  0.0f, Animation.RELATIVE_TO_PARENT,  -1.0f
);
outFromBottom.setDuration(1000);
outFromBottom.setInterpolator(new AccelerateInterpolator());
return outFromBottom;
}


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

 flipper = (ViewFlipper) findViewById(R.id.flipper);

 Button button1 = (Button) findViewById(R.id.button1);

 Button button2 = (Button) findViewById(R.id.flipback);

 button1.setOnClickListener(new View.OnClickListener() {
     public void onClick(View view) {
         flipper.setInAnimation(inFromTopAnimation());
         flipper.setOutAnimation(outToBottomAnimation());
         flipper.showNext();      
     }
 });

 button2.setOnClickListener(new View.OnClickListener() {
     public void onClick(View view) {
         flipper.setInAnimation(outToTopAnimation());
         flipper.setOutAnimation(outFromBottomAnimation());
         flipper.showPrevious();

     }

 });
0 голосов
/ 29 августа 2011

вот, пожалуйста, это должно помочь. Вы можете использовать viewFilpper с слайдом andimaiton

вот пример ссылки с помощью ракурса-ласт-в-андроида

вместо этих текстовых представлений в примере вы можете поместить свои 4 макета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...