Junior
Kas yra veikla mobiliojoje programėlėje?
sobes.tech AI
Atsakymas iš AI
Veikla (Activity) Android yra atskiras programėlės ekranas, kuris sąveikauja su vartotoju. Kiekviena veikla yra atskiras UI komponentas ir turi savo gyvavimo ciklą. Programėlė gali turėti kelias veiklas, kurios gali būti susijusios viena su kita.
Kiekviena veikla turi gyvavimo ciklą, kurį valdo Android sistema:
| Būsenos | Aprašymas |
|---|---|
onCreate() |
Veikla sukurta. Atliekama inicializacija. |
onStart() |
Veikla tampa matoma vartotojui. |
onResume() |
Veikla gauna fokusą ir yra pasiruošusi sąveikai. |
onPause() |
Veikla praranda fokusą, bet dar matoma. Gali būti iš dalies uždengta. |
onStop() |
Veikla nebėra matoma vartotojui. |
onDestroy() |
Veikla sunaikinta. |
onRestart() |
Veikla, buvusi onStop() būsenoje, vėl tampa matoma. |
Android projekto struktūros pavyzdys su veiklomis:
// 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); // Susiejame su layout failu
Button nextButton = findViewById(R.id.next_button);
nextButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Pereiti į kitą veiklą
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); // Susiejame su layout failu
}
}
Programėlės manifestas (AndroidManifest.xml) apibrėžia visas veiklas ir įėjimo taškus:
<!-- 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">
<!-- Pagrindinės veiklos deklaravimas -->
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<!-- Antros veiklos deklaravimas -->
<activity android:name=".SecondaryActivity"/>
</application>
</manifest>
Taigi, veiklos yra pagrindiniai elementai naudotojo sąsajos kūrime Android programėlėse.