KOTLIN 把NeutralButton和PositiveButton的位置調換,並向右移動1㎝
时间: 2023-06-25 10:06:53 浏览: 40
在 Kotlin 中,可以使用 AlertDialog.Builder 中的 setPositiveButton() 和 setNegativeButton() 方法来设置对话框中的积极按钮和消极按钮,分别对应 PositiveButton 和 NegativeButton。如果要交换两个按钮的位置并向右移动一厘米,可以通过以下代码实现:
```kotlin
val dialogBuilder = AlertDialog.Builder(this)
dialogBuilder.setMessage("Are you sure you want to delete this item?")
dialogBuilder.setPositiveButton("Delete") { dialog, which ->
// delete item
}
dialogBuilder.setNegativeButton("Cancel") { dialog, which ->
// do nothing
}
// swap the buttons and adjust the layout
val alertDialog = dialogBuilder.create()
alertDialog.setOnShowListener {
val positiveButton = alertDialog.getButton(DialogInterface.BUTTON_POSITIVE)
val negativeButton = alertDialog.getButton(DialogInterface.BUTTON_NEGATIVE)
val positiveParams = positiveButton.layoutParams as LinearLayout.LayoutParams
val negativeParams = negativeButton.layoutParams as LinearLayout.LayoutParams
positiveParams.gravity = Gravity.RIGHT
negativeParams.gravity = Gravity.LEFT
positiveParams.setMargins(0, 0, 100, 0)
negativeParams.setMargins(100, 0, 0, 0)
positiveButton.layoutParams = positiveParams
negativeButton.layoutParams = negativeParams
}
alertDialog.show()
```
在这个代码示例中,我们先创建了一个 AlertDialog.Builder 对象,并设置了消息和积极/消极按钮的文本和点击事件。然后我们创建了一个 AlertDialog 对象,添加了一个监听器来调整按钮的位置和布局。在监听器中,我们首先获取了积极和消极按钮的布局参数,然后将积极按钮的位置向右移动了一厘米,并将两个按钮的左右间距都设置为 100 像素。最后,我们将调整后的布局参数重新设置到按钮上,并显示对话框。