Sobes.tech
Junior

Android tətbiqlərində naviqasiya necə həyata keçirilir?

sobes.tech Süni İntellekt

AI-dan cavab

Android tətbiqlərində naviqasiya müxtəlif üsullarla həyata keçirilə bilər və ən çox yayılmışları bunlardır:

  • Naviqasiya komponentləri (Navigation Component): Google tərəfindən tövsiyə olunan naviqasiya həyata keçirmək üçün çərçivə. Bütün ekranları və onların arasındakı keçidləri təsvir etmək üçün naviqasiya qrafikindən istifadə edir. Argümentləri, dərin linkləri, keçid animasiyalarını dəstəkləyir.

    // Naviqasiya qrafikinin nümunəsi
    <navigation xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/nav_graph"
        app:startDestination="@id/fragmentA">
    
        <fragment
            android:id="@+id/fragmentA"
            android:name="com.example.myapp.FragmentA"
            android:label="Fragment A">
            <action
                android:id="@+id/action_fragmentA_to_fragmentB"
                app:destination="@id/fragmentB" />
        </fragment>
        <fragment
            android:id="@+id/fragmentB"
            android:name="com.example.myapp.FragmentB"
            android:label="Fragment B" />
    </navigation>
    
    // Safe Args istifadə edərək keçid nümunəsi
    findNavController().navigate(R.id.action_fragmentA_to_fragmentB)
    
  • Açıq Intents (Explicit Intents): Eyni tətbiq daxilində və ya başqa bir tətbiqdə müəyyən bir komponenti (Activity, Service, BroadcastReceiver) işə salmaq üçün istifadə olunur.

    // Activity-ni başlatma nümunəsi
    val intent = Intent(this, SettingsActivity::class.java)
    startActivity(intent)
    
  • Qapalı Intents (Implicit Intents): Ediləcək əməliyyatı və bu əməliyyat üçün məlumatları elan edir. Android sistemi bu intent-i işləyəcək uyğun komponenti tapır.

    // Veb səhifəsini açmaq nümunəsi
    val webpage = Uri.parse("http://www.android.com")
    val intent = Intent(Intent.ACTION_VIEW, webpage)
    if (intent.resolveActivity(packageManager) != null) {
        startActivity(intent)
    }
    
  • Geri Dönüş Yığını İdarəetməsi: Android sistemi geri dönüş yığını saxlayır və naviqasiya tarixçəsini idarə edir. "Geri" düyməsi istifadəçini yığının əvvəlki elementinə aparır.

  • BottomNavigationView: tətbiqdə əsas istiqamətlər arasında naviqasiya üçün UI komponenti.

  • DrawerLayout (Navigation Drawer): Yan panel, menyu elementləri ilə, naviqasiya üçün.

Hər üsulun öz üstünlükləri və istifadə ssenariləri var. Naviqasiya komponenti, tətbiq daxilində fragmentlər və fəaliyyətlər arasında naviqasiyanı idarə etmək üçün üstünlük təşkil edir, vahid yanaşma təmin edir və geri dönüş yığını və arqumentlərlə işləməni sadələşdirir. Intents isə digər komponentləri işə salmaq və digər tətbiqlərlə qarşılıqlı əlaqə üçün istifadə olunur.