Android实现悬浮对话框代码

 更新时间:2016年03月30日 11:50:59   作者:MSTK  
这篇文章主要介绍了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仿微博首页Tab加号弹窗功能

    Android仿微博首页Tab加号弹窗功能

    这篇文章主要为大家详细介绍了Android仿微博首页Tab加号弹窗功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • Android Java crash 处理流程详解

    Android Java crash 处理流程详解

    这篇文章主要为大家介绍了Android Java crash 处理流程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Android中点击事件的四种写法详解

    Android中点击事件的四种写法详解

    本篇文章主要介绍了Android中点击事件的四种写法详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • Android图片处理教程之全景查看效果实现

    Android图片处理教程之全景查看效果实现

    这篇文章主要给大家介绍了关于Android图片处理教程之全景查看效果实现的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06
  • 发布 Android library 到 Maven 解析

    发布 Android library 到 Maven 解析

    这篇文章主要介绍了发布 Android library到Maven解析,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • 如何在Android中实现左右滑动的指引效果

    如何在Android中实现左右滑动的指引效果

    本篇文章是对在Android中实现左右滑动指引效果的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • Android中activity处理返回结果的实现方式

    Android中activity处理返回结果的实现方式

    这篇文章主要介绍了Android中activity处理返回结果的实现方式,为了实现这个功能,Android提供了一个机制,跳转到其他activity时,再返回,可以接受到其他activity返回的值,无需再start新的当前activity。需要的朋友可以参考下
    2016-12-12
  • Android本地数据存储Room实践和优化技巧

    Android本地数据存储Room实践和优化技巧

    本文详细介绍了Android本地数据存储框架Room的使用,包括基本概念、核心组件、最佳实践、优化技巧等,帮助开发者学习和掌握Room的使用方法,提升数据存储效率和应用性能
    2023-04-04
  • Android ADT 离线下载操作步骤

    Android ADT 离线下载操作步骤

    这篇文章主要介绍了Android ADT 离线下载操作步骤的相关资料,需要的朋友可以参考下
    2017-04-04
  • Android 组合控件实现布局的复用的方法

    Android 组合控件实现布局的复用的方法

    本篇文章主要介绍了Android 组合控件实现布局的复用的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08

最新评论