diff options
author | Allan Wang <me@allanwang.ca> | 2021-04-17 15:32:32 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-17 15:32:32 -0700 |
commit | 12f4725a90762aeeca8936b6449445e800b2f09a (patch) | |
tree | 584d1347abf542361c327519942080c75c16a889 /core-ui/src/main/kotlin | |
parent | 3ec75195a25f6e502ceca7a89aa66f6313e263e6 (diff) | |
parent | 1057b6a113c7b2fa1320ce0378e34484f901ee2f (diff) | |
download | kau-12f4725a90762aeeca8936b6449445e800b2f09a.tar.gz kau-12f4725a90762aeeca8936b6449445e800b2f09a.tar.bz2 kau-12f4725a90762aeeca8936b6449445e800b2f09a.zip |
Merge pull request #261 from AllanWang/versions
Diffstat (limited to 'core-ui/src/main/kotlin')
-rw-r--r-- | core-ui/src/main/kotlin/ca/allanwang/kau/ui/activities/ElasticRecyclerActivity.kt | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/core-ui/src/main/kotlin/ca/allanwang/kau/ui/activities/ElasticRecyclerActivity.kt b/core-ui/src/main/kotlin/ca/allanwang/kau/ui/activities/ElasticRecyclerActivity.kt index 3e7254f..e948f29 100644 --- a/core-ui/src/main/kotlin/ca/allanwang/kau/ui/activities/ElasticRecyclerActivity.kt +++ b/core-ui/src/main/kotlin/ca/allanwang/kau/ui/activities/ElasticRecyclerActivity.kt @@ -23,8 +23,8 @@ import androidx.appcompat.widget.Toolbar import androidx.recyclerview.widget.RecyclerView import ca.allanwang.kau.internal.KauBaseActivity import ca.allanwang.kau.ui.R +import ca.allanwang.kau.ui.databinding.KauElasticRecyclerActivityBinding import ca.allanwang.kau.ui.widgets.ElasticDragDismissFrameLayout -import kotlinx.android.synthetic.main.kau_elastic_recycler_activity.* /** * Created by Allan Wang on 2017-07-17. @@ -41,8 +41,11 @@ import kotlinx.android.synthetic.main.kau_elastic_recycler_activity.* abstract class ElasticRecyclerActivity : KauBaseActivity() { private val configs = Configs() - protected val toolbar: Toolbar get() = kau_toolbar - protected val recycler: RecyclerView get() = kau_recycler + + private lateinit var binding: KauElasticRecyclerActivityBinding + + protected val toolbar: Toolbar get() = binding.kauToolbar + protected val recycler: RecyclerView get() = binding.kauRecycler class Configs { var exitTransitionBottom = R.transition.kau_exit_slide_bottom @@ -51,17 +54,22 @@ abstract class ElasticRecyclerActivity : KauBaseActivity() { final override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - setContentView(R.layout.kau_elastic_recycler_activity) - setSupportActionBar(kau_toolbar) + binding = KauElasticRecyclerActivityBinding.inflate(layoutInflater) + setContentView(binding.root) + setSupportActionBar(binding.kauToolbar) if (!onCreate(savedInstanceState, configs)) { return } - kau_draggable.addListener(object : ElasticDragDismissFrameLayout.SystemChromeFader(this) { + binding.init() + } + + private fun KauElasticRecyclerActivityBinding.init() { + kauDraggable.addListener(object : ElasticDragDismissFrameLayout.SystemChromeFader(this@ElasticRecyclerActivity) { override fun onDragDismissed() { window.returnTransition = TransitionInflater.from(this@ElasticRecyclerActivity) - .inflateTransition(if (kau_draggable.translationY > 0) configs.exitTransitionBottom else configs.exitTransitionTop) - kau_recycler.stopScroll() + .inflateTransition(if (kauDraggable.translationY > 0) configs.exitTransitionBottom else configs.exitTransitionTop) + kauRecycler.stopScroll() finishAfterTransition() } }) @@ -79,6 +87,6 @@ abstract class ElasticRecyclerActivity : KauBaseActivity() { * Receive actions when the a click event is received outside of the coordinator */ fun setOutsideTapListener(listener: () -> Unit) { - kau_draggable.setOnClickListener { listener() } + binding.kauDraggable.setOnClickListener { listener() } } } |