Sobes.tech
Middle

Ekranı döndürərkən fəaliyyətin yenidən yaradılmamasını necə təmin etmək olar?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, mümkündür. İki əsas üsul var.

  1. configChanges-i manifestdə qeyd edin: AndroidManifest.xml-də, <activity> üçün, android:configChanges="orientation|screenSize" atributunu əlavə edin.

    <activity
        android:name=".MainActivity"
        android:configChanges="orientation|screenSize" />
    

    Bu halda, fəaliyyət yenidən yaradılmır, əvəzinə onConfigurationChanged() metodu çağırılır və konfiqurasiya dəyişikliklərini idarə etmək üçün yenidən yazılmalıdır.

    override fun onConfigurationChanged(newConfig: Configuration) {
        super.onConfigurationChanged(newConfig)
        // Dəyişiklikləri idarə edin, məsələn:
        // if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
        //     // Yatay rejimə keçid
        // } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
        //     // Şaquli rejimə keçid
        // }
    }
    
  2. Ekran istiqamətini sabitləşdirin: Aktivliyin istiqamətini sabitləşdirmək mümkündür, android:screenOrientation atributunu manifestə əlavə etməklə.

    <activity
        android:name=".MainActivity"
        android:screenOrientation="portrait" />
    

    və ya

    <activity  
        android:name=".MainActivity"  
        android:screenOrientation="landscape" />
    

    Bu halda, aktivliyin istiqaməti cihazın döndürülməsindən asılı olmayaraq dəyişməyəcək və yenidən yaradılmayacaq.