Skip to content

Add iOS SwiftUI sample - #1

Open
avdim wants to merge 33 commits into
mainfrom
ios_swiftui
Open

Add iOS SwiftUI sample#1
avdim wants to merge 33 commits into
mainfrom
ios_swiftui

Conversation

@avdim

@avdimavdim commented Jan 23, 2022

Copy link
Copy Markdown
Owner

Добавил реализацию MapView на SwiftUI.
При этом уже написанный код почти не поменялся.

Места, на которые стоит обратить внимание:

  • iOS специфичный код в общих модулях:
typealiasImageIos=UIImageactualclassTileImage(
valplatformSpecificData:ImageIos, // Единственное iOS специфичное место в общем коде
...
)
  • Вся логика отрисовки уместилась в одной SwiftUI структуре MapViewSwiftUI.swift
  • MapStoreAdapter.kt и MapViewModel.swift нужны чтобы адаптировать MapState под SwiftUI
    StateFlow становится простым callback-ом в Swift
fun addListener(listener: (MapState) -> Unit) {
stateFlow.collectLatest {
listener(it)
}
}

image

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@avdim