📜  Android ui-widgets(1)

📅  最后修改于: 2023-12-03 14:39:09.178000             🧑  作者: Mango

Android UI Widgets

Android UI Widgets are graphical user interface components used to create interactive and responsive apps on the Android operating system. They provide different functionalities such as displaying text, images, videos or recording user inputs via touch or keyboard, among others. In this article, we'll explore some of the most commonly used Android UI Widgets and how to use them in your Android app development.

Views

Views are the basic building blocks of the Android UI. A View represents a rectangular area on the screen, with which the user can interact. Some of the most essential View Widgets are:

TextView

TextView is used to display a text message on the screen. It can be customized to set different text sizes, colors, fonts, and styles. Here is an example usage:

<TextView
    android:id="@+id/textView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Hello World!"
    android:textSize="20sp"
    android:textColor="@color/black"
    android:textStyle="bold" />
ImageView

ImageView is used to display an image on the screen. It can be customized to scale, crop, and filter the image. Here is an example usage:

<ImageView
    android:id="@+id/imageView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:src="@drawable/my_image"
    android:scaleType="fitCenter"
    android:alpha="0.7" />
Button

Button is used to trigger an action when the user clicks on it. It can be customized to set different colors, shapes, and sizes. Here is an example usage:

<Button
    android:id="@+id/button"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Click me!"
    android:textColor="@color/white"
    android:background="@drawable/my_button"
    android:onClick="onButtonClick" />
EditText

EditText is used to allow the user to input text. It can be customized to set different input types, hints, colors, and sizes. Here is an example usage:

<EditText
    android:id="@+id/editText"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="Enter your name"
    android:textColorHint="@color/hint_color"
    android:textColor="@color/black"
    android:textSize="18sp"
    android:inputType="text" />
Layouts

Layouts are used to organize Views in a structured manner. They define how Views are positioned and resized on the screen. Some of the most commonly used Layout Widgets are:

LinearLayout

LinearLayout arranges views linearly either horizontally or vertically based on the orientation specified. Here is an example usage:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/my_image" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="My Text" />

</LinearLayout>
RelativeLayout

RelativeLayout positions the views relative to each other. Here is an example usage:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/my_image"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="My Text"
        android:layout_alignBottom="@+id/imageView"
        android:layout_toRightOf="@+id/imageView"
        android:layout_toEndOf="@+id/imageView"
        android:layout_marginLeft="10dp"
        android:layout_marginStart="10dp" />

</RelativeLayout>
ConstraintLayout

ConstraintLayout allows views to be positioned relative to each other, providing greater flexibility than LinearLayout and RelativeLayout. Here is an example usage:

<androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:src="@drawable/my_image"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="My Text"
        app:layout_constraintStart_toEndOf="@id/imageView"
        app:layout_constraintTop_toTopOf="@id/imageView" />

</androidx.constraintlayout.widget.ConstraintLayout>
Conclusion

In this article, we have explored some of the most commonly used Android UI Widgets and how to use them in various layouts. By mastering these Widgets, you can create stunning and interactive Android apps that provide excellent user experience.