android 如何在界面上点击按钮实现popupwindow弹窗,并且在popupwindow弹窗上点击按钮,再浮现一层popupwindow
时间: 2024-05-14 11:19:47 浏览: 158
Android开发之PopupWindow实现弹窗
5星 · 资源好评率100%
实现该功能需要先创建一个按钮,然后在按钮的点击事件中创建一个 PopupWindow 对象。在 PopupWindow 中,可以设置一个布局文件,该文件会展示在弹窗中。接下来,可以为弹窗中的按钮设置一个点击事件,通过点击事件再创建一个 PopupWindow 对象,展示新的弹窗层。
具体实现步骤如下:
1. 创建一个按钮,设置按钮的点击事件
2. 在点击事件中使用 PopupWindow 类创建一个弹窗对象,并且设置它的布局文件
3. 获取布局文件中的子视图,并在子视图中为按钮设置点击事件
4. 在按钮的点击事件中创建一个新的 PopupWindow 对象,然后为它设置另一个布局文件,展示新的弹窗层
关于具体的代码实现,你可以参考下面的示例代码:
``` kotlin
// 创建一个按钮
val button = Button(this)
button.text = "点击弹窗"
button.setOnClickListener(View.OnClickListener {
// 创建一个 PopupWindow 对象
val popupWindow = PopupWindow(this)
// 设置弹窗的布局文件
val view = layoutInflater.inflate(R.layout.popup_window, null)
popupWindow.contentView = view
// 获取布局文件中的子视图
val popupButton = view.findViewById<Button>(R.id.popup_button)
popupButton.setOnClickListener(View.OnClickListener {
// 创建一个新的 PopupWindow 对象
val popupWindow2 = PopupWindow(this)
// 设置弹窗的布局文件
val view2 = layoutInflater.inflate(R.layout.popup_window_2, null)
popupWindow2.contentView = view2
// 显示弹窗
popupWindow2.showAsDropDown(popupButton)
})
// 显示弹窗
popupWindow.showAsDropDown(button)
})
```
在代码中,首先创建一个按钮,并设置它的点击事件。在点击事件中,创建了一个 PopupWindow 对象,然后为它设置了一个布局文件。接着,使用 findViewById() 方法获取布局文件中的子视图,并为它设置了一个点击事件。在点击事件中,又创建了一个新的 PopupWindow 对象,并设置了一个新的布局文件。最后,分别通过 showAsDropDown() 方法显示了两个弹窗层。
阅读全文