diff options
author | Isidro Henoch <imhenoch@protonmail.com> | 2021-12-08 02:09:47 -0600 |
---|---|---|
committer | Isidro Henoch <imhenoch@protonmail.com> | 2021-12-08 02:09:47 -0600 |
commit | d2ee6a21355c390a4aaefc6ea847060c8e47c6ae (patch) | |
tree | 3a4000d6c933109a91add937827168ab0a18c1b7 /androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt | |
parent | c80ece3087b862e1849ad5c2972b9b13fec2eb3f (diff) | |
download | etbsa-trackermap-mobile-d2ee6a21355c390a4aaefc6ea847060c8e47c6ae.tar.gz etbsa-trackermap-mobile-d2ee6a21355c390a4aaefc6ea847060c8e47c6ae.tar.bz2 etbsa-trackermap-mobile-d2ee6a21355c390a4aaefc6ea847060c8e47c6ae.zip |
WIP: Starts implementing the main activity
- Removes the MainActivity and the shared code it was using
- Adds the UnitsActivity
- Implements the Map/List toggle functionality
Diffstat (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt')
-rw-r--r-- | androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt new file mode 100644 index 0000000..6e9bc83 --- /dev/null +++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt @@ -0,0 +1,52 @@ +package mx.trackermap.TrackerMap.android.units + +import android.os.Bundle +import androidx.appcompat.app.AppCompatActivity +import androidx.fragment.app.commit +import mx.trackermap.TrackerMap.android.R +import mx.trackermap.TrackerMap.android.databinding.UnitsActivityBinding +import mx.trackermap.TrackerMap.android.devices.DevicesFragment +import mx.trackermap.TrackerMap.android.map.MapFragment +import org.koin.androidx.viewmodel.ext.android.viewModel + +class UnitsActivity : AppCompatActivity() { + + private var _binding: UnitsActivityBinding? = null + private val binding get() = _binding!! + + private val unitsViewModel: UnitsViewModel by viewModel() + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + + _binding = UnitsActivityBinding.inflate(layoutInflater) + setContentView(binding.root) + + setupEvents() + setupObservers() + } + + override fun onDestroy() { + super.onDestroy() + _binding = null + } + + private fun setupEvents() { + binding.displayModeToggle.setOnClickListener { + unitsViewModel.toggleDisplayMode() + } + } + + private fun setupObservers() { + unitsViewModel.unitsDisplayMode.observe(this) { displayMode -> + val newFragment = + when (displayMode) { + UnitsViewModel.UnitsDisplayMode.LIST -> DevicesFragment() + UnitsViewModel.UnitsDisplayMode.MAP -> MapFragment() + } + supportFragmentManager.commit { + replace(R.id.displayContainer, newFragment) + } + } + } +}
\ No newline at end of file |