如何在 Kotlin 中为 Toast 设置重力(属性 样式)(出现错误)?

How do I set the gravity (property style) for a Toast in Kotlin (getting error)?

当我写这段代码时:

var toast = Toast.makeText(
    this,
    "Toast at top!",
    Toast.LENGTH_SHORT
)
toast.gravity = Gravity.TOP
toast.show()

我在 toast.gravity 行收到错误“Val 无法重新分配”。

你可以写一个扩展函数,但我只是这样做的:

toast.setGravity(Gravity.TOP, 0, 0)

顺便说一句,你也可以这样做(如果你想要更多的选择):

toast.setGravity(Gravity.TOP or Gravity.RIGHT, 0, 0)

我希望这可以节省一些时间。我希望它由 Android 实施。

你可以试试这个。

val toast = Toast.makeText(this, "Working", Toast.LENGTH_LONG)
toast.setGravity(Gravity.TOP, 0, 0)
toast.show()

或使用 Kotlin 范围函数的单行答案:

Toast.makeText(this, "Working", Toast.LENGTH_LONG).apply {setGravity(Gravity.TOP, 0, 0); show() }