Sobes.tech
Junior

Koje načine navigacije u Androidu poznajete?

sobes.tech АИ

Одговор од АИ

Postoji nekoliko glavnih načina navigacije na Androidu:

  • Na vrh (Vraćanje na jedan nivo više): Obično se implementira pomoću dugmeta sa strelicom u ActionBar/Toolbar-u. Vraća korisnika na prethodni ekran u logičkoj hijerarhiji aplikacije.
  • Nazad (Vraćanje): Implementira se pomoću sistemskog dugmeta "Nazad". Vraća korisnika na prethodni ekran koji je posećivao.
  • Početna (Početna stranica): Povratak na glavni ekran aplikacije ili uređaja.
  • Duboki linkovi (Deep Links): Direktan pristup određenom ekranu ili resursu unutar aplikacije putem linka. Mogu biti kreirani iz spoljašnjih izvora (web, druge aplikacije) ili unutar same aplikacije.
  • Navigaciona fioka (Navigation Drawer): Bočni izvlačni panel koji sadrži linkove ka različitim odeljcima aplikacije.
  • Donja navigaciona traka (Bottom Navigation Bar): Panel na donjem delu ekrana koji omogućava brzo prebacivanje između glavnih odeljaka aplikacije.

Glavni pristupi implementaciji navigacije:

  • Korišćenje startActivityForResult i onActivityResult: Stari način prenosa podataka između aktivnosti.
  • Prenos podataka putem Extras u Intent-u: Jednostavan način prenosa primitivnih podataka i objekata koji se mogu serijalizovati/parcels-ovati između aktivnosti.
  • FragmentTransaction: Upravljanje fragmentima (dodavanje, zamenjivanje, brisanje itd.) za navigaciju unutar aktivnosti.
  • Navigation Component: Zvanična biblioteka od Google-a koja pojednostavljuje implementaciju navigacije između različitih komponenti aplikacije (Activity, Fragment, prilagođeni prikazi). Pruža grafički uređivač navigacionog grafa, prenos argumenata i upravljanje povratnim stekom.
// Primer navigacije sa Navigation Component-om
findNavController().navigate(R.id.action_currentFragment_to_nextFragment)

// Prenos argumenata sa Navigation Component-om
val bundle = Bundle()
bundle.putString("key", "value")
findNavController().navigate(R.id.action_currentFragment_to_nextFragment, bundle)