Подтвердить что ты не робот

Просмотр ViewSwitcher в AndroidStudio

Есть ли простой способ переключения между отображаемым представлением в ViewSwitcher в предварительном просмотре Android Studio или является единственным способом поменять местами XML для под-представлений по одному за раз?

4b9b3361

Ответ 1

К сожалению, в Android Studio нет никаких атрибутов XML или какой-либо опции, которые могут помочь вам определить отображаемое представление.

Аналогичный вопрос для ViewFlipper был задан здесь (оба они являются прямыми подклассами ViewAnimator).

Однако , если и только если ваши представления большие как экран, вы можете использовать тег include, например:

<ViewSwitcher
    android:id="@+id/myViewSwitcher"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include
        layout="@layout/first_view">
    </include>

    <include
        layout="@layout/second_view">
    </include>

</ViewSwitcher>

Затем вы можете увидеть свои макеты в отдельном файле XML.

Ответ 2

Прежде всего, если вы думаете использовать ViewSwitcher, просто для показа ProgressDialog, то вы не делаете это так, как это должно быть. ViewSwitcher обычно используется для изменения макета Activity. В вашем случае ProgressDialog не является View вашего Activity, а просто небольшим помощником, который указывает на какой-то процесс. Итак, коротко ViewSwitcher следует использовать где-нибудь, где вы хотите изменить полный экран Activity.

В вашем случае вы можете разделить макет на более мелкие файлы макета и сгруппировать их с помощью merge или include.

Создайте отдельные файлы для всех разных экранов, которые будут определять пользовательский интерфейс вашего Activity и группировать их с помощью include.

В качестве примера мы можем создать небольшое приложение для введения, используя ViewSwitcher -

  • Первый экран - my_product.xml - этот макет определит что-то о продукте.

  • Второй экран - about_us.xml - этот макет будет описывать вашу компанию.

  • Третий экран - thank_you.xml - сказать спасибо вашим пользователям.

Группируйте их в любом контейнере View.

<ViewSwitcher
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include
        layout="@layout/my_product"/>

    <include
        layout="@layout/about_us"/>

    <include
        layout="@layout/thank_you"/>

</ViewSwitcher>

Ответ 3

ViewPager может легко решить ваши проблемы.

ViewPager (он может содержать несколько видов). ViewPager - это вид контейнера массива для объектов View. У вас может быть поворот ViewPager (например, вращение массива) или другие методы для замены внутри видов. И вы можете создавать свои внутренние представления на основе Factory DP, так что происходит меньше обработки (разделяет общие ресурсы).

Они упомянули здесь прокручивание (Примечание: вам понадобятся собственные методы просмотра, если вы не хотите использовать поворот по умолчанию ViewPager).

Создание прокрутки: https://developer.android.com/training/implementing-navigation/lateral.html

ViewPager для слайдов экрана: https://developer.android.com/training/animation/screen-slide.html