【发布时间】:2019-10-08 08:19:14
【问题描述】:
我有一个带有自定义视图的 AlertDialog,其中包含两个 EditText 字段。在某些时候,使用以下代码显示对话框:
val builder = AlertDialog.Builder(this)
builder
.setView(R.layout.dialog)
.setMessage("message")
.setPositiveButton("Oke"){ dialog, id -> println("oke")}
.setNegativeButton("Cancel"){ dialog, id -> println("cancel")}
val dialog = builder.create()
dialog.show()
当用户按下 EditText 时,SoftKeyboard 会显示,但 Dialog 并未上移。我已经尝试将 dialog.window 的 softinputmode 设置为 SOFT_INPUT_ADJUST_PAN 或 SOFT_INPUT_ADJUST_RESIZE 像这样。
dialog.window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN)
但这似乎没有任何作用。
【问题讨论】:
-
我刚刚使用您提供的代码创建了新项目,当显示键盘时,它对我来说似乎工作正常 - 对话框向上移动。可能由于某些 Activity/Fragment 设置或根布局,您的对话框未居中。
标签: android kotlin android-alertdialog