android 弹窗黑边规避,代码自定义布局不用
来源:互联网 发布:c语言面向对象 编辑:程序博客网 时间:2024/06/06 06:37
采用popwindow实现无黑边弹窗
代码:
public class ExitGameDialog{ Context context; RelativeLayout contentViewbg; RelativeLayout contentView; RelativeLayout.LayoutParams content_parms; android.view.ViewGroup.LayoutParams alert_layout_parms; String orgen="#fe9d00"; String green="#5ec324"; PopupWindow pop; public ExitGameDialog(Context context,ExitGameCallBack mBack1) { //super(context); this.context = context; this.mBack=mBack1; WindowManager manager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); int screenwidth = manager.getDefaultDisplay().getWidth(); int screenHeight = manager.getDefaultDisplay().getHeight(); int leftAndRight=DisplayUtil.dip2px(context,25); //xml中布局直接View view = inflater.inflate(R.layout.test_alertdialog_listview,null);引入即可 //<!------------------------代码设置布局,xml布局可以直接跳过换用inflate引入-------------------------------> //全屏透明背景 contentViewbg=new RelativeLayout(context); alert_layout_parms=new LayoutParams(android.view.ViewGroup.LayoutParams.MATCH_PARENT,android.view.ViewGroup.LayoutParams.MATCH_PARENT); contentViewbg.setBackgroundColor(Color.parseColor("#ba000000")); contentViewbg.setGravity(Gravity.CENTER); contentView=new RelativeLayout(context); content_parms=new RelativeLayout.LayoutParams(screenwidth-2*leftAndRight,RelativeLayout.LayoutParams.WRAP_CONTENT); contentView.setBackgroundColor(Color.WHITE); contentView.setGravity(Gravity.CENTER); contentView.setPadding(leftAndRight,leftAndRight,leftAndRight,leftAndRight); LinearLayout content_layout=new LinearLayout(context); RelativeLayout.LayoutParams content_layout_parms=new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.WRAP_CONTENT); content_layout.setOrientation(LinearLayout.VERTICAL); TextView tv_title=new TextView(context); LinearLayout.LayoutParams tv_title_parms=new LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT); tv_title_parms.gravity=Gravity.CENTER_HORIZONTAL; tv_title.setText("温馨提示"); tv_title.setTextColor(Color.parseColor(orgen)); tv_title.setTextSize(17); TextView tv_fgx=new TextView(context); int fgxh=DisplayUtil.dip2px(context,0.5f); LinearLayout.LayoutParams tv_fgx_parms=new LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,fgxh); tv_fgx_parms.topMargin=DisplayUtil.dip2px(context,15); tv_fgx.setBackgroundColor(Color.GRAY); TextView tv_content=new TextView(context); LinearLayout.LayoutParams tv_content_parms=new LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT); tv_content_parms.topMargin=DisplayUtil.dip2px(context,25); tv_content.setText("确认退出游戏吗?"); tv_content.setTextColor(Color.parseColor("#333333")); tv_content.setTextSize(15); LinearLayout ll_btn_layout=new LinearLayout(context); ll_btn_layout.setOrientation(LinearLayout.HORIZONTAL); LinearLayout.LayoutParams ll_btn_layout_parms=new LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT); ll_btn_layout_parms.topMargin=DisplayUtil.dip2px(context,25); int btn_top=DisplayUtil.dip2px(context,6); TextView tv_ok=new TextView(context); LinearLayout.LayoutParams tv_ok_parms=new LayoutParams(0,LinearLayout.LayoutParams.WRAP_CONTENT); tv_ok.setGravity(Gravity.CENTER); tv_ok.setPadding(0, btn_top, 0, btn_top); tv_ok_parms.weight=1; tv_ok.setText("确定"); tv_ok.setTextColor(Color.WHITE); tv_ok.setBackgroundColor(Color.parseColor(orgen)); tv_ok.setTextSize(15); tv_ok.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) { pop.dismiss(); Log.e("test","click ok btn");}}); TextView tv_cancel=new TextView(context); LinearLayout.LayoutParams tv_cancel_parms=new LayoutParams(0,LinearLayout.LayoutParams.WRAP_CONTENT); tv_cancel_parms.weight=1; tv_cancel_parms.leftMargin=DisplayUtil.dip2px(context,20); tv_cancel.setPadding(0, btn_top, 0, btn_top); tv_cancel.setGravity(Gravity.CENTER); tv_cancel.setText("返回"); tv_cancel.setTextColor(Color.WHITE); tv_cancel.setTextSize(15); tv_cancel.setBackgroundColor(Color.parseColor(green)); tv_cancel.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {pop.dismiss();Log.e("test","click goback btn");}}); ll_btn_layout.addView(tv_ok, tv_ok_parms); ll_btn_layout.addView(tv_cancel, tv_cancel_parms); content_layout.addView(tv_title,tv_title_parms); content_layout.addView(tv_fgx,tv_fgx_parms); content_layout.addView(tv_content,tv_content_parms); content_layout.addView(ll_btn_layout,ll_btn_layout_parms); contentView.addView(content_layout,content_layout_parms); contentViewbg.addView(contentView,content_parms); pop=new PopupWindow(contentViewbg, screenwidth, screenHeight); pop.showAtLocation(contentViewbg,Gravity.CENTER, 0, 0); } }
0 0
- android 弹窗黑边规避,代码自定义布局不用
- android代码中自定义布局
- 自动规避代码陷阱——自定义Lint规则
- 代码自定义布局
- 代码实现自定义布局
- 好久不用代码实现自定义UItableViewCell
- android 自定义控件之折线图自己写代码,不用jar包
- android自定义LoadPager页面,再也不用担心重复的代码啦
- android自定义布局
- Android自定义Notification布局
- android 自定义Preferecne布局
- android 自定义Preferecne布局
- android AlertDialog自定义布局
- Android自定义Gallery布局
- 【Android】自定义AlertDialog布局
- android 自定义Layout布局
- Android ListView自定义布局
- android自定义表格布局
- 斐波拉契数列(Fibonacci)的Python实现
- 第九周 对称矩阵压缩存储的实现和应用
- CUDA学习笔记之随机数
- 关于Spynner以及browser类---怎样解析动态网页
- Java设计模式——线程安全的单件模式
- android 弹窗黑边规避,代码自定义布局不用
- 为什么不能再where语句中使用聚合函数
- android屏幕单位
- 3、spring入门—Spring Bean的装配(上)
- C#发送邮件
- javascript事件的三个阶段
- Iterable<T>和Iterator<E>
- LDA-隐狄利克雷分布-主题模型
- centos7 配置多个Tomcat