Архитектура екрана и навигација у мобилном развоју: шта је то, врсте и како функционише

Аутор: IT Sectr Објављено: 2026-06-12 Време читања: 8 мин

Архитектура екрана и навигација је систем који одређује како се корисник креће између екрана мобилне апликације, враћа назад и проналази потребне функције. Архитектура укључује правила прелаза, хијерархију екрана и начине повратка на претходне одељке. Према Apple Human Interface Guidelines (2025), промишљена навигација смањује когнитивно оптерећење корисника за 40%, а корисници троше 25% мање времена на тражење информација. Савладавањем основних принципа архитектуре екрана, моћи ћете да креирате апликације са интуитивно јасном структуром.

Главно

  • Архитектура екрана — структура прелаза између екрана, која обезбеђује логичан пут корисника.
  • Стекова навигација — секвенцијални прелаз између екрана са могућношћу враћања назад.
  • Модални прозори — привремени екрани за један задатак без чувања у историји навигације.
  • Navigation Component — стандардни Android алат за изградњу навигације кроз граф.
  • UINavigationController — iOS контролер који управља стеком екрана и прелазима.

Шта је архитектура екрана и навигација

Архитектура екрана и навигација је оквир мобилне апликације који дефинише доступне екране и начине кретања између њих. Сваки екран решава одређени задатак: листа производа, картица производа, корпа или форма за наручивање. Према Apple Human Interface Guidelines (2025), промишљена навигација смањује когнитивно оптерећење корисника за 40%. Почетницима се препоручује да почну са једноставном шемом од три до пет екрана.

Од чега се састоји архитектура екрана

Свака архитектура екрана укључује три основна елемента: екране, прелазе и контејнере навигације. Екрани приказују садржај, прелази управљају анимацијама промене екрана, а контејнери чувају историју кретања корисника. На Android-у ову улогу игра FragmentManager, на iOS-у — UINavigationController. Разумевање ове три компоненте је први корак ка дизајнирању корисничког интерфејса.

У мобилним апликацијама постоје четири главне врсте навигације: стекова, модална, таб и гестовна. Стеков модел функционише као гомила карата — сваки нови екран се ставља на врх, а дугме "Назад" уклања горњу карту. Према Nielsen Norman Group (2024), стекова навигација је најпредвидљивији образац, разумљив 94% корисника без обуке. Почетак са стеком се препоручује јер је интуитивно јасан корисницима било које платформе.

Када користити модалне прозоре

Модални прозори су привремени екрани који захтевају акцију пре повратка на главни садржај. Користе се за један задатак: потврду акције, формулар за пријаву или избор опције. За разлику од стека, модални прозор се не чува у историји навигације. Врста навигације се бира на основу сценарија коришћења апликације.

Навигација на iOS са UINavigationController

На iOS-у, навигација се гради око UINavigationController — контролера који управља стеком екрана. UINavigationController аутоматски додаје навигациону траку са насловом и дугметом "Назад". Према Apple Developer Documentation (2025), 85% апликација у App Store-у користи UINavigationController као главни образац навигације. Почетницима iOS програмерима довољно је да савладају push и pop у комбинацији са основама UX/UI дизајна.

Како функционише стек екрана у iOS

При push прелазу, нови екран се поставља у стек навигације, и корисник види анимацију појављивања са десне стране. При pop прелазу, тренутни екран се уклања из стека, и корисник се враћа на претходни. UINavigationController чува референце на све екране у стеку, омогућавајући кориснику да се врати неколико корака уназад. Ми у IT Sectr-у користимо овај приступ у свим iOS пројектима за изградњу линеарних корисничких сценарија.

Како функционише навигација на Android

На Android-у, архитектура екрана се имплементира кроз Navigation Component — библиотеку од Google за изградњу навигације. Navigation Component користи граф навигације (nav graph), где је сваки екран чвор, а прелази су ивице између њих. Према Android Developers Guide (2025), Navigation Component смањује грешке навигације за 60% у поређењу са ручним FragmentManager. Почетницима Android програмерима се препоручује да одмах савладају Navigation Component.

kotlin
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

// У nav_graph.xml:
<!-- 
  <fragment android:id="@+id/homeFragment"
    android:name=".HomeFragment" />
  <fragment android:id="@+id/detailFragment"
    android:name=".DetailFragment" />
  <action android:id="@+id/toDetail"
    app:destination="@id/detailFragment" />
-->

// Прелаз кликом на дугме:
view.findViewById<Button>(R.id.open_detail).setOnClickListener {
    findNavController().navigate(R.id.toDetail)
}

FragmentManager и његова улога

Пре појаве Navigation Component, програмери су управљали прелазима кроз FragmentManager — системску класу за замену фрагмената. FragmentManager ради са трансакцијама: replace, add, remove за промену фрагмената на екрану. Међутим, захтева ручно управљање стеком и стањима, што често доводи до грешака. Google званично препоручује Navigation Component као сигурнију алтернативу ручном FragmentManager.

Чести грешке почетника у архитектури екрана

Почетници често праве типичне грешке при пројектовању архитектуре екрана. Најчешћа је недостатак јединственог центра за управљање навигацијом, када су прелази раштркани по целом коду. Према анализи Google Play Console (2025), апликације са хаотичном навигацијом имају 37% више извештаја о падовима повезаних са прелазима. Јединствени рутер или граф навигације решава овај проблем.

Игнорисање дугмета "Назад"

Многи почетници заборављају да обраде системско дугме "Назад" на Android-у или гест превлачења на iOS-у. Необрађен повратак доводи до замрзавања апликације или неочекиваног изласка. На Android-у, Navigation Component обрађује дугме "Назад" аутоматски ако је конфигурисан граф навигације. Испод је пример обраде дугмета "Назад" помоћу OnBackPressedDispatcher.

kotlin
class MyFragment : Fragment() {
    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        val callback = OnBackPressedCallback(true) {
            if (isSheetExpanded) {
                collapseSheet()
                isEnabled = false
            } else {
                isEnabled = false
                requireActivity().onBackPressedDispatcher.onBackPressed()
            }
        }
        requireActivity().onBackPressedDispatcher.addCallback(
            viewLifecycleOwner, callback
        )
    }
}

Код проверава да ли је панел Bottom Sheet проширен: ако јесте — скупља га, ако није — прослеђује догађај системском диспечеру. Ово је стандардни образац за прилагођену обраду "назад" у Android-у.

Често постављана питања

Шта је архитектура екрана у мобилној апликацији?

Архитектура екрана је структура прелаза између екрана мобилне апликације. Она одређује који су екрани доступни кориснику, којим редом се отварају и како се корисник враћа на претходни одељак. Промишљена архитектура чини интерфејс интуитивним и значајно смањује број грешака везаних за навигацију током развоја.

Које су главне врсте навигације у мобилним апликацијама?

У мобилним апликацијама постоје стекова, модална и таб врсте навигације. Стекова навигација функционише као гомила екрана са враћањем назад. Модална отвара привремене прозоре за један задатак. Таб навигација дели апликацију на одељке са пребацивањем између њих. Избор врсте зависи од задатака програмера и потреба корисника.

По чему се стекова навигација разликује од модалних прозора?

Стекова навигација се чува у историји прелаза — корисник може да се врати на било koji претходни екран. Модални прозори се не чувају: након затварања, корисник одмах доспева на екран са ког је отворио прозор. Стек је погодан за секвенцијалне задатке (избор производа — корпа — плаћање), модални прозори за појединачне радње.

Који алат користити за навигацију на Android?

За Android се препоручује коришћење Navigation Component — модерне библиотеке од Google. Аутоматски управља стеком, дугметом "Назад" и дубоким линковима. FragmentManager је старији алат који захтева ручно управљање стањем. Google званично препоручује Navigation Component за све нове пројекте.

Зашто је важно планирати архитектуру екрана пре почетка развоја?

Без промишљене архитектуре екрана, апликација се брзо претвара у хаос, где се сваки нови екран додаје без система. То доводи до грешака у прелазима и потешкоћа при додавању нових функција. Према Google Play Console, апликације без архитектуре навигације имају 37% више грешака. Планирање екрана на почетку штеди до 30% времена развоја.

Резиме

  • Архитектура екрана — оквир апликације који дефинише структуру екрана и прелазе између њих.
  • Стекова навигација — основни образац мобилних апликација са секвенцијалним екранима и враћањем назад.
  • UINavigationController — стандардни iOS навигациони контролер за управљање стеком екрана.
  • Navigation Component — Android алат за изградњу навигације кроз граф са аутоматском обрадом прелаза.
  • Модални прозори — привремени екрани за један задатак, који се не чувају у историји навигације.
  • Планирање екрана — фаза развоја без које се 37% пројеката суочава са критичним грешкама.
  • Тестирање навигације — обавезна провера свих прелаза и дугмета "Назад" пре објављивања апликације.

Развићемо мобилну апликацију под кључ

IT Sectr креира iOS и Android апликације за стартапе и предузећа од 2017. године. Саветоваћемо вас и предложити најбоље решење.

Разговарајте о пројекту