Как перейти с одного макета на другой макет в Android - PullRequest
1 голос
/ 17 июля 2011

Я думаю, что макет с индикатором progressBar (определенным) будет отображаться в течение 5 секунд, когда я открою свое приложение.Через 5 секунд этот макет будет заменен другим макетом, содержащим несколько кнопок.Как это сделать.Пожалуйста, помогите мне ...

Ответы [ 4 ]

1 голос
/ 16 августа 2011

Вы можете определить все два свойства макетов внутри одного макета в ViewFlipper

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/lah"
    >
    <ViewFlipper 
        android:id="@+id/flipper"
        android:layout_height="fill_parent"
        android:layout_width="fill_parent" 
        >

       <LinearLayout 
         android:layout_width="fill_parent"
         android:layout_height="fill_parent"
         android:id="@+id/first_layout">
         .
         .

         .

       </LinearLayout> 

       <LinearLayout 
         android:layout_width="fill_parent"
         android:layout_height="fill_parent"
         android:id="@+id/second_layout">
         .
         .

         .

       </LinearLayout> 

   </ViewFlipper 
</LinearLayout> 

Затем в вашей Java-программе создайте объект ViewFlipper.

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

И звоните

    vf.showNext();

Вы также можете применить анимацию, которая, кажется, переключает макеты справа налево. Спасибо ...

    vf.setInAnimation(AnimationUtils.loadAnimation( getApplicationContext(), R.anim.right_in ));
    vf.setOutAnimation( AnimationUtils.loadAnimation( getApplicationContext(), R.anim.left_out ));
    vf.showNext();
1 голос
/ 17 июля 2011

Попробуйте setContentView(R.layout.secondLayout);

Если это не сработало, вы также можете поместить все ваши представления в один макет и установить видимость кнопок на true и видимость индикатора выполнения на false через 5 секунд.

0 голосов
/ 17 июля 2011

В LinearLayout или относительной компоновке, если вы объявляете две компоновки макетов для панели progess и вторую, содержащую кнопки, тогда, когда прогресс индикатора выполнения завершен, просто установите видимость макета индикатора выполнения в GONE и видимость макета кнопок в VISIBLE.Вначале видимость кнопок должна исчезнуть.

0 голосов
/ 17 июля 2011

Вы можете использовать ViewAnimator

...