'view'容器在Android的XML中起什么作用>>

问题描述 投票:-1回答:1

在此XML中,使用view

有什么优势?
    <?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout android:id="@+id/coordinatorLayout2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

        <androidx.constraintlayout.widget.ConstraintLayout
            android:id="@+id/constraintLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <View
                android:id="@+id/view"
                android:layout_width="100dp"
                android:layout_height="720dp"
                android:layout_marginStart="8dp"
                android:layout_marginEnd="8dp"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent" />

            <Button
                android:id="@+id/toggleBtn"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="72dp"
                android:text="@string/toggle_screen"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent" />

            <TextView
                android:id="@+id/textTv"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="120dp"
                android:text="@string/primary_screen"
                android:textSize="18sp"
                android:textStyle="bold"
                app:layout_constraintEnd_toEndOf="@+id/toggleBtn"
                app:layout_constraintStart_toStartOf="@+id/toggleBtn"
                app:layout_constraintTop_toBottomOf="@+id/toggleBtn" />

        </androidx.constraintlayout.widget.ConstraintLayout>

    </androidx.coordinatorlayout.widget.CoordinatorLayout>

我在有和没有view

的情况下测试了代码,并且在设备上的输出没有发现任何差异。通常,XML中view的用法是什么?感谢您的帮助。

在此XML中,使用视图的优点是什么?

android xml android-studio view
1个回答
0
投票

根据您的布局,我刚刚更新了您的布局,添加了颜色以查看视图,以下是布局和图像。

这是您的布局:

<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout android:id="@+id/coordinatorLayout2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/constraintLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <View
            android:id="@+id/view"
            android:layout_width="100dp"
            android:layout_height="720dp"
            android:layout_marginStart="8dp"
            android:layout_marginEnd="8dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            android:background="@color/black_2"/>

        <Button
            android:id="@+id/toggleBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="72dp"
            android:text="this is button"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

        <TextView
            android:id="@+id/textTv"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="120dp"
            android:text="this is text view"
            android:textSize="18sp"
            android:textStyle="bold"
            app:layout_constraintEnd_toEndOf="@+id/toggleBtn"
            app:layout_constraintStart_toStartOf="@+id/toggleBtn"
            app:layout_constraintTop_toBottomOf="@+id/toggleBtn" />

    </androidx.constraintlayout.widget.ConstraintLayout>

</androidx.coordinatorlayout.widget.CoordinatorLayout>

带视图的图像

Image with view

因此,如果您具有view,则由于ConstraintLayout的高度为720dp,由于wrap_content行为,ConstraintLayout将伸展到最大。

具有视图的约束布局的高度

Height of Constraint Layout

并且如果您删除view,那么ConstraintLayout的高度也会改变

无视图的约束布局的高度

Height of Constraint Layout without  View

取决于您的要求,您是否需要查看,但是目前没有影响。

© www.soinside.com 2019 - 2024. All rights reserved.