PopupWindow
PopupWindow
效果图:![popupWindow.gif](https://i.loli.net/2017/08/11/598da1a03ae8b.gif)
弹窗布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000"
android:orientation="vertical">
<Button
android:id="@+id/btn_popup_windows_item1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Item1"
android:textSize="18sp"/>
<Button
android:id="@+id/btn_popup_windows_item2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Item2"
android:textSize="18sp"/>
</LinearLayout>
void showPopupWindow(View view){
View viewpw =View.inflate(TestActivity.this,R.layout.item_popup_window_layout,null);
Button btn1=(Button) viewpw.findViewById(R.id.btn_popup_windows_item1);
//设置背景透明效果 (注意Background必须背景色)(范围0~255)
viewpw.getBackground().setAlpha(100);
//创建PopupWindow 并设置宽 高
final PopupWindow popupWindow = new PopupWindow(viewpw,
ViewGroup.LayoutParams.WRAP_CONTENT,ViewGroup.LayoutParams.WRAP_CONTENT);
//设置焦点,这样的或就可以实现点击popupWindow外部区域,关闭popupWindow
popupWindow.setFocusable(true);
//设置显示位置
popupWindow.showAsDropDown(view, 60,0); //指定View的下方
//popupWindow.showAtLocation(view, Gravity.CENTER,0,0); //屏幕中心
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(TestActivity.this, "You click Item1", Toast.LENGTH_SHORT).show();
popupWindow.dismiss(); //关闭 PopupWindow
}
});
}
文章部分内容摘自网络和图书,如有侵权,请联系我。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步