安卓气泡弹窗
Posted 心脏dance
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓气泡弹窗相关的知识,希望对你有一定的参考价值。
先画好自己的气泡布局 pop_window_view.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/背景图"
android:gravity="center_horizontal"
android:orientation="horizontal"
android:paddingStart="9dp"
android:paddingEnd="12dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="9dp"
android:text="@string/气泡里面的文字"
android:textColor="@color/white" />
<ImageView
android:id="@+id/close"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="9dp"
android:layout_marginTop="12dp"
android:src="@drawable/右边箭头 />
</LinearLayout>
效果如下:
怎么使用呢?
注意:气泡布局需要依赖一个其他的布局才可以,只要在依赖的布局渲染完成后,调用initPopWindow()即可。
private var popupWindow: PopupWindow? = null
private fun initPopWindow()
val popWindowView =
LayoutInflater.from(context).inflate(R.layout.pop_window_view, null, false)
val mClose = popWindowView.findViewById<ImageView>(R.id.close)
popupWindow = PopupWindow(
popWindowView,
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,
true
)
popupWindow?.isFocusable = false
popupWindow?.isOutsideTouchable = false
// 设置气泡依赖的布局,以及在依赖的布局的哪儿个位置
popupWindow?.showAsDropDown(依赖的布局, 1f.dp2px.toInt(), 2f.dp2px.toInt())
mClose.setOnClickListener
popupWindow?.dismiss()
以上是关于安卓气泡弹窗的主要内容,如果未能解决你的问题,请参考以下文章