Diferencia entre View y ViewGroup en Android


Respuestas:


130

Ver

  1. View Los objetos son los componentes básicos de los elementos de la interfaz de usuario (UI) en Android.
  2. View es un cuadro rectangular simple que responde a las acciones del usuario.
  3. Ejemplos de ello son EditText, Button, CheckBoxetc ..
  4. Viewse refiere a la android.view.Viewclase, que es la clase base de todas las clases de IU.

ViewGroup

  1. ViewGroupes el contenedor invisible. Sostiene ViewyViewGroup
  2. Por ejemplo, LinearLayoutes el ViewGroupque contiene Botón (Ver) y también otros diseños.
  3. ViewGroup es la clase base para Layouts.

10
También creo que vale la pena señalar que ViewGroup es una subclase de View
Pinkerton

Entonces, si ViewGroup es una subclase de View significa que View es la clase base para Layouts, no ViewGroup.
Shivanshu

1
@Shivanshu Depende de lo que quieras decir con "clase base". La clase Viewa su vez se extiendeObject , entonces, ¿diría que Objectes la clase base para los diseños?
horcrux

59

La imagen de abajo es la respuesta . No lo tome demasiado complejo.

ingrese la descripción de la imagen aquí


7
Directo al grano. La imagen lo explica de una manera muy pragmática, lo cual es bueno, pero la definición de la respuesta anterior también parece necesaria para agregar algo importante a la respuesta en su conjunto.
ivanleoncz

31
  1. A ViewGroupes una vista especial que puede contener otras vistas (llamadas secundarias). El grupo de vistas es la clase base para diseños y contenedores de vistas. Esta clase también define la ViewGroup.LayoutParamsclase que sirve como clase base para los parámetros de diseño.

    Viewclass representa el bloque de construcción básico para los componentes de la interfaz de usuario. Una vista ocupa un área rectangular en la pantalla y es responsable del dibujo y el manejo de eventos. View es la clase base de los widgets, que se utilizan para crear componentes de interfaz de usuario interactivos (botones, campos de texto, etc.).

  2. Ejemplo: ViewGroup (LinearLayout), View (TextView)

Referencia


14

Viewes un componente básico de UI(Interfaz de usuario) en Android. Una vista es una pequeña caja rectangular que responde a las entradas del usuario. Por ejemplo: EditText, Button, CheckBox, etc ..

ViewGroupes un contenedor invisible de otras vistas (vistas secundarias) y otros grupos de vistas. Por ejemplo: LinearLayoutes un grupo de vistas que puede contener otras vistas.

ViewGroup es un tipo especial de vista que se extiende desde Ver como su clase base. ViewGroupes la clase base para diseños.

como indica el nombre, View es singular y el grupo de Vistas es el ViewGroup .

más información: http://www.herongyang.com/Android/View-ViewGroup-Layout-and-Widget.html


4

ViewGroupes en sí mismo un Viewcontenedor para otras vistas. Extiende la funcionalidad deView clase para proporcionar formas eficientes de diseñar las vistas secundarias.

Por ejemplo, LinearLayoutes un ViewGroupque le permite definir la orientación en la que desea que se coloquen las vistas secundarias, eso es todo lo que necesita hacer y LinearLayoutse encargará del resto.



2

en ViewGrouppuede agregar algunos otros Views como niño. ViewGroupes la clase base para diseños y contenedores de vistas.


1

Viewes el componente SuperClass of All como, TextView, EditText, ListView,etc., mientras que ViewGroupes Collection of Views (TextView, EditText, ListView, etc..), algo así como contenedor.


1

Un objeto de vista es un componente de la interfaz de usuario (UI) como un botón o un cuadro de texto, y también se llama widget.

Un objeto ViewGroup es un diseño, es decir, un contenedor de otros objetos ViewGroup (diseños) y objetos View (widgets). Es posible tener un diseño dentro de otro diseño. Se llama diseño anidado, pero puede aumentar el tiempo necesario para dibujar la interfaz de usuario.

La interfaz de usuario de una aplicación se crea utilizando una jerarquía de ViewGroup y View objetos. En Android Studio, es posible utilizar la ventana Árbol de componentes para visualizar esta jerarquía.

El editor de diseño de Android Studio se puede utilizar para arrastrar y soltar objetos de visualización (widgets) en el diseño. Simplifica la creación de un diseño.


1

En palabras simples, View es el elemento de la interfaz de usuario con el que interactuamos cuando usamos una aplicación, como un botón, editar texto e imagen, etc.View es la clase secundaria de Android.view View while View group es el contenedor que contiene todas estas vistas dentro además de varios otros grupos de vistas como lineal o diseño de marco, etc. Ejemplo, si diseñamos y tomamos el elemento raíz como diseño lineal, ahora nuestro diseño principal es un diseño lineal dentro de él podemos tomar otro grupo de vistas (es decir, otro diseño lineal) y muchos otros vistas como botones o vista de texto, etc.


0

Un ViewGroup describe el diseño de las Vistas en su grupo. Los dos ejemplos básicos de ViewGroups son LinearLayout y RelativeLayout. Rompiendo LinearLayout aún más, puede tener Vertical LinearLayout o Horizontal LinearLayout. Si elige Vertical LinearLayout, sus Vistas se apilarán verticalmente en su pantalla. Los dos ejemplos más básicos de Vistas son TextView y Button. Por lo tanto, si tiene un ViewGroup de Vertical LinearLayout, sus Vistas (por ejemplo, TextViews y Botones) se alinearían verticalmente hacia abajo en su pantalla.

Cuando los otros carteles muestran ViewGroups anidados, lo que significan es, por ejemplo, que una de las filas en mi Vertical LinearLayout podría en realidad, en el nivel inferior, ser varios elementos dispuestos horizontalmente. En ese caso, tendría un Horizontal LinearLayout como uno de los elementos secundarios de mi Vertical LinearLayout de nivel superior.

Ejemplo de ViewGroups anidados:
ViewGroup principal = Vertical LinearLayout

Row1: TextView1
Row2: Button1
Row3: Imagen TextView2 Button2 <- Lineal horizontal anidado en Vertical Linear
Row4: TextView3
Row5: Button3


1
Ejemplo de grupos de vistas anidados:
sv Math Tutor
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.