feat(android): init basic marker and polylines
This commit is contained in:
parent
89ffc02e1d
commit
0ffd415874
5 changed files with 126 additions and 12 deletions
|
|
@ -2,14 +2,16 @@ package moe.lava.banksia
|
|||
|
||||
import androidx.compose.animation.AnimatedVisibility
|
||||
import androidx.compose.foundation.Image
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.foundation.layout.fillMaxWidth
|
||||
import androidx.compose.material.BottomSheetScaffold
|
||||
import androidx.compose.material.Button
|
||||
import androidx.compose.material.MaterialTheme
|
||||
import androidx.compose.material.Scaffold
|
||||
import androidx.compose.material.Text
|
||||
import androidx.compose.material3.BottomSheetScaffold
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
import androidx.compose.material3.SheetValue
|
||||
import androidx.compose.material3.rememberBottomSheetScaffoldState
|
||||
import androidx.compose.material3.rememberStandardBottomSheetState
|
||||
import androidx.compose.runtime.*
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
|
|
@ -20,12 +22,25 @@ import banksia.composeapp.generated.resources.Res
|
|||
import banksia.composeapp.generated.resources.compose_multiplatform
|
||||
import moe.lava.banksia.native.maps.Maps
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
@Preview
|
||||
fun App() {
|
||||
val scaffoldState = rememberBottomSheetScaffoldState(
|
||||
bottomSheetState = rememberStandardBottomSheetState(
|
||||
initialValue = SheetValue.Hidden,
|
||||
skipHiddenState = false
|
||||
)
|
||||
)
|
||||
MaterialTheme {
|
||||
Scaffold {
|
||||
Maps(modifier = Modifier.fillMaxSize())
|
||||
BottomSheetScaffold(
|
||||
scaffoldState = scaffoldState,
|
||||
sheetContent = { Box(modifier = Modifier) },
|
||||
) {
|
||||
Maps(
|
||||
modifier = Modifier.fillMaxSize(),
|
||||
sheetState = scaffoldState.bottomSheetState,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,12 +1,21 @@
|
|||
package moe.lava.banksia.native.maps
|
||||
|
||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
import androidx.compose.material3.SheetState
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
|
||||
data class Marker(val name: String)
|
||||
data class Marker(val name: String, val onClick: () -> Boolean)
|
||||
data class Point(val lat: Double, val lng: Double)
|
||||
data class Polyline(val points: List<Point>, val colour: Color)
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
expect fun Maps(
|
||||
modifier: Modifier = Modifier,
|
||||
markers: List<Marker> = listOf()
|
||||
markers: List<Marker> = listOf(),
|
||||
polylines: List<Polyline> = listOf(),
|
||||
cameraPosition: Point = Point(-37.8136, 144.9631),
|
||||
sheetState: SheetState,
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue