Sobes.tech
Middle

Welke navigatiemethoden zijn er in de app naast het gebruik van de navigatiebibliotheek?

sobes.tech AI

Antwoord van AI

  1. Expliciete intenties: Overgang tussen activiteiten met startActivity().

    // Intent maken voor overgang naar NewActivity
    val intent = Intent(this, NewActivity::class.java)
    // Gegevens toevoegen aan intent
    intent.putExtra("data_key", "some value")
    // Nieuwe activiteit starten
    startActivity(intent)
    
  2. Impliciete intenties: Activiteiten starten vanuit andere applicaties of systeemonderdelen.

    // Intent maken om een webpagina te openen
    val webpage: Uri = Uri.parse("http://www.android.com")
    val webIntent = Intent(Intent.ACTION_VIEW, webpage)
    // Activiteit starten die deze intent kan verwerken
    startActivity(webIntent)
    
  3. DialogFragment: Gebruik van dialoogvensters om informatie weer te geven of invoer van de gebruiker te krijgen, die kunnen leiden tot verdere acties of sluiten.

    // Een instantie van een DialogFragment maken
    val myDialogFragment = MyDialogFragment()
    // Dialoog tonen
    myDialogFragment.show(supportFragmentManager, "my_dialog")
    
  4. FragmentTransaction: Handmatig beheer van fragmenten binnen een activiteit: toevoegen, vervangen, verwijderen.

    // FragmentManager verkrijgen
    val fragmentManager = supportFragmentManager
    // Transactie starten
    val fragmentTransaction = fragmentManager.beginTransaction()
    // Huidig fragment vervangen door een nieuwe
    fragmentTransaction.replace(R.id.fragment_container, newFragment)
    // Transactie aan backstack toevoegen
    fragmentTransaction.addToBackStack(null)
    // Transactie bevestigen
    fragmentTransaction.commit()
    
  5. Single-activity architectuur met handmatig beheer van fragmenten: Alle navigatie wordt binnen één activiteit uitgevoerd door het wisselen van weergegeven fragmenten. Dit is in wezen een meer gestructureerd gebruik van FragmentTransaction.

  6. Aangepaste Views: Opbouw van complexe en niet-standaard navigatie met behulp van eigen Views, die veranderen of inhoud aanpassen afhankelijk van de toestand van de applicatie.

Navigatiemethode Belangrijk mechanisme Voordelen Nadelen
Expliciete intenties Een andere Activity starten op klassebasis Eenvoudige overgang tussen Activities, gegevensoverdracht Complexiteit bij veel schermen
Impliciete intenties Activity starten op actie/gegevens Interactie met andere applicaties Beperkte flexibiliteit voor interne navigatie
DialogFragment Dialoogvenster tonen Eenvoudige modale vensters tonen Niet geschikt voor hoofd navigatie
FragmentTransaction Beheer van de levenscyclus van Fragment in Activity Flexibele UI-beheer Vereist handmatig beheer van backstack en toestand
Single-activity + Fragments Wisselen van Fragmenten in Activity Geschikt voor enkel-scherm applicaties Kan complex worden bij veel schermen
Aangepaste Views Eigen logica voor UI-wisselingen Maximale flexibiliteit en personalisatie Hoge ontwikkelings- en onderhoudscomplexiteit