Android开发之自定义PopupWindow记录
16lz
2021-01-23
1、继承PopupWindow :package com.qy.foreign_trade.dialog;import android.app.Activity;import android.content.Context;import android.graphics.drawable.ColorDrawable;import android.view.View;import android.view.ViewGroup;import android.view.WindowManager;import android.widget.PopupWindow;import com.qy.foreign_trade.R;/** * Created by xu_xin on 2019/7/3 0003. */public class XPopupWindow1 extends PopupWindow { private WindowManager.LayoutParams lp; private Activity mContext; private View contentView; public XPopupWindow1(Context context) { mContext = (Activity) context; lp = mContext.getWindow().getAttributes(); setContentView(init()); setOnDismissListener(new OnDismissListener() { @Override public void onDismiss() { setAlpha(1f); } }); } public View getContentView() { return contentView; } private View init() { contentView = View.inflate(mContext, R.layout.pop_tips, null); setWidth(ViewGroup.LayoutParams.WRAP_CONTENT); setHeight(ViewGroup.LayoutParams.WRAP_CONTENT); setBackgroundDrawable(new ColorDrawable(0x00FFFFFF)); setFocusable(false); setOutsideTouchable(false); return contentView; } @Override public void showAtLocation(View parent, int gravity, int x, int y) { setAlpha(0.7f); super.showAtLocation(parent, gravity, x, y); } @Override public void showAsDropDown(View anchor) { setAlpha(0.7f); super.showAsDropDown(anchor); } private void setAlpha(float alpha) { lp.alpha = alpha; mContext.getWindow().setAttributes(lp); }}
2、使用
private void sureBack() {popupWindow = new XPopupWindow1(this.mContext);View contentView = popupWindow.getContentView();popupWindow.showAtLocation(contentView, Gravity.CENTER, 0, 0);TextView tv_state_name = contentView.findViewById(R.id.tv_state_name);TextView tv_tips = contentView.findViewById(R.id.tv_tips);LinearLayout ll_hs = contentView.findViewById(R.id.ll_hs);TextView tv_cencel = contentView.findViewById(R.id.tv_cencel);TextView tv_suer = contentView.findViewById(R.id.tv_suer);}
完成
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer