Sobes.tech
Junior

Ce este activitatea într-o aplicație mobilă?

sobes.tech AI

Răspuns de la AI

Activitatea (Activity) în Android este un ecran separat al aplicației care interacționează cu utilizatorul. Fiecare activitate reprezintă un component UI separat și are propriul ciclu de viață. Aplicația poate conține mai multe activități care pot fi legate între ele.

Fiecare activitate are un ciclu de viață gestionat de sistemul Android:

Stare Descriere
onCreate() Activitatea este creată. Se efectuează inițializarea.
onStart() Activitatea devine vizibilă pentru utilizator.
onResume() Activitatea primește focusul și este gata pentru interacțiune.
onPause() Activitatea își pierde focusul, dar este încă vizibilă. Poate fi parțial acoperită.
onStop() Activitatea nu mai este vizibilă pentru utilizator.
onDestroy() Activitatea este distrusă.
onRestart() Activitatea în starea onStop(), devine din nou vizibilă.

Exemplu de structură a unui proiect Android cu activități:

// MainActivity.java
package com.example.myapp;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.content.Intent;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); // Legare cu fișierul layout

        Button nextButton = findViewById(R.id.next_button);
        nextButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // Trecere la altă activitate
                Intent intent = new Intent(MainActivity.this, SecondaryActivity.class);
                startActivity(intent);
            }
        });
    }
}

// SecondaryActivity.java
package com.example.myapp;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class SecondaryActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_secondary); // Legare cu fișierul layout
    }
}

Manifestul aplicației (AndroidManifest.xml) definește toate activitățile și punctele de intrare:

<!-- AndroidManifest.xml -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.myapp">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApp">

        <!-- Declararea activității principale -->
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>

        <!-- Declararea celei de-a doua activități -->
        <activity android:name=".SecondaryActivity"/>

    </application>
</manifest>

Prin urmare, activitățile sunt blocurile de construcție ale interfeței utilizator în aplicațiile Android.