Junior
Mis on tegevus mobiilirakenduses?
sobes.tech AI
Vastus AI-lt
Androidis on tegevus (Activity) eraldi ekraan rakenduses, mis suhtleb kasutajaga. Iga tegevus on eraldi kasutajaliidese komponent ja omab oma elutsüklit. Rakendus võib sisaldada mitmeid tegevusi, mis võivad olla omavahel seotud.
Igal tegevusel on elutsükkel, mida haldab Androidi süsteem:
| Seisund | Kirjeldus |
|---|---|
onCreate() |
Tegevus on loodud. Käivitatakse initsialiseerimine. |
onStart() |
Tegevus muutub kasutajale nähtavaks. |
onResume() |
Tegevus saab fookuse ja on valmis suhtlemiseks. |
onPause() |
Tegevus kaotab fookuse, kuid on endiselt nähtav. Võib olla osaliselt peidetud. |
onStop() |
Tegevus ei ole enam kasutajale nähtav. |
onDestroy() |
Tegevus hävitatakse. |
onRestart() |
Tegevus, mis oli onStop() olekus, muutub uuesti nähtavaks. |
Androidi projekti struktuuri näide tegevustega:
// 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); // Seome layout-failiga
Button nextButton = findViewById(R.id.next_button);
nextButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Liigu teise tegevuse juurde
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); // Seome layout-failiga
}
}
Rakenduse manifest (AndroidManifest.xml) määratleb kõik tegevused ja sisenemispunktid:
<!-- 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">
<!-- Peamise tegevuse määratlus -->
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<!-- Teise tegevuse määratlus -->
<activity android:name=".SecondaryActivity"/>
</application>
</manifest>
Seega on tegevused Android rakendustes kasutajaliidese põhielemendid.