Android实现悬浮对话框代码
2019/7/7 19:53:04
本文主要是介绍Android实现悬浮对话框代码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
先给大家展示下效果图,大家觉效果满意,请参考实现代码。
直接上代码:
private void setDialog(){ View view = getLayoutInflater().inflate(R.layout.dialog_country, null); mDialog = new Dialog(this); mDialog.setContentView(view, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); Window window = mDialog.getWindow(); WindowManager.LayoutParams wl = window.getAttributes(); wl.x = 0; wl.y = getWindowManager().getDefaultDisplay().getHeight(); wl.width = ViewGroup.LayoutParams.MATCH_PARENT; wl.height = ViewGroup.LayoutParams.WRAP_CONTENT; mDialog.onWindowAttributesChanged(wl); mDialog.setCanceledOnTouchOutside(true); mDialog.show(); Button btnChina = (Button) view.findViewById(R.id.btnChina); Button btnUSA = (Button) view.findViewById(R.id.btnUSA); Button btnUK = (Button) view.findViewById(R.id.btnUK); Button btnCancel = (Button) view.findViewById(R.id.btnCancel); btnChina.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub mQuery.id(R.id.btnCountry).getTextView().setText("China"); mDialog.dismiss(); } }); btnUSA.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub mQuery.id(R.id.btnCountry).getTextView().setText("USA"); mDialog.dismiss(); } }); btnUK.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub mQuery.id(R.id.btnCountry).getTextView().setText("UK"); mDialog.dismiss(); } }); btnCancel.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub mDialog.dismiss(); } }); }
首先inflate一个xml文件,产生一个view;再创建一个Dialog,设置Dialog的View为inflate的view;然后通过WindowManager.LayoutParams设置Dialog的长度、宽度、显示的位置等等,最后setCanceledOnTouchOutside(true),点击其他地方可以退出Dialog。
这篇关于Android实现悬浮对话框代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-01-18android.permission.read_media_video
- 2024-01-18android_getaddrinfo failed eai_nodata
- 2024-01-18androidmo
- 2024-01-15Android下三种离屏渲染技术
- 2024-01-09Android 蓝牙使用
- 2024-01-06Android对接华为AI - 文本识别
- 2023-11-15代码安全之代码混淆及加固(Android)
- 2023-11-10简述Android语音播报TTS
- 2023-11-06Android WiFi工具类
- 2023-07-22Android开发未来的出路