1. ホーム
  2. android

[解決済み] AndroidでKotlinを使ってToastを表示するには?

2023-04-21 07:20:43

質問

Android用の様々なKotlinの例で、私は toast("Some message...") または toastLong("Some long message") . 例えば

view.setOnClickListener { toast("Click") }

私の理解では、これは Activity .

どこでどのように定義しているかというと、この toast() 関数を定義し、プロジェクト全体で使用できるようにするのですか?

どのように解決するのですか?

の拡張機能である Context :

fun Context.toast(message: CharSequence) = 
    Toast.makeText(this, message, Toast.LENGTH_SHORT).show()

これはプロジェクトのどこにでも置くことができます。例えば、ファイル mypackage.util.ContextExtensions.kt を定義し、トップレベルの関数としてそこに置くことができます。

にアクセスできるときはいつでも Context インスタンスにアクセスできる場合は、この関数をインポートして使用することができます。

import mypackage.util.ContextExtensions.toast

fun myFun(context: Context) {
    context.toast("Hello world!")
}