From f1decbeb5be7bd232e74841e629d6ecb8ed4b0d0 Mon Sep 17 00:00:00 2001 From: luyao Date: Tue, 16 Jul 2019 10:49:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=20ActivityExt=EF=BC=8C?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E4=BC=A0=E9=80=92=E5=8D=95=E4=B8=AA=20Pair?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/luyao/util/ktx/ui/ActivityExtActivity.kt | 14 +++++++++----- app/src/main/res/layout/activity_activity_ext.xml | 5 +++++ .../main/java/luyao/util/ktx/ext/ActivityExt.kt | 7 +++++++ 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/luyao/util/ktx/ui/ActivityExtActivity.kt b/app/src/main/java/luyao/util/ktx/ui/ActivityExtActivity.kt index f197bf6..e85b6ce 100644 --- a/app/src/main/java/luyao/util/ktx/ui/ActivityExtActivity.kt +++ b/app/src/main/java/luyao/util/ktx/ui/ActivityExtActivity.kt @@ -36,21 +36,25 @@ class ActivityExtActivity : BaseActivity() { } startActivityWithValue.setOnClickListener { + startKtxActivity(value = "string" to "single value") + } + + startActivityWithMultiValue.setOnClickListener { startKtxActivity( values = arrayListOf( "int" to 1, "boolean" to true, - "string" to "from previous activity" - ) + "string" to "multi value" + ) ) } startActivityWithBundle.setOnClickListener { startKtxActivity( extra = Bundle().apply { - putInt("int",2) - putBoolean("boolean",true) - putString("string","from bundle") + putInt("int", 2) + putBoolean("boolean", true) + putString("string", "from bundle") } ) } diff --git a/app/src/main/res/layout/activity_activity_ext.xml b/app/src/main/res/layout/activity_activity_ext.xml index 6dc38e3..914ae02 100644 --- a/app/src/main/res/layout/activity_activity_ext.xml +++ b/app/src/main/res/layout/activity_activity_ext.xml @@ -26,6 +26,11 @@ android:text="startActivityWithValue" style="@style/NormalButton"/> + + Activity.startKtxActivity(flags: Int? = null, extra: Bundle? = null): Unit = startActivity(getIntent(flags, extra)) +inline fun Activity.startKtxActivity( + flags: Int? = null, + extra: Bundle? = null, + value: Pair? +): Unit = + startActivity(getIntent(flags, extra, arrayListOf(value))) + inline fun Activity.startKtxActivity( flags: Int? = null, extra: Bundle? = null,