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。

相关文章

  • Andriod 读取网络图片实例代码解析

    Andriod 读取网络图片实例代码解析

    Android手机上,我们经常用imageview显示图片,通过本文学习获取网络图片并显示在imageview中,对android读取网络图片相关知识感兴趣的朋友一起学习吧
    2016-02-02
  • Android清除工程中无用资源文件的两种方法

    Android清除工程中无用资源文件的两种方法

    这篇文章主要介绍了Android清除工程中无用资源文件的两种方法,调用Android lint命令查找出无用资源,二是使用代码自动删除无用的文件,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • Android实现整理PackageManager获取所有安装程序信息

    Android实现整理PackageManager获取所有安装程序信息

    这篇文章主要介绍了Android实现整理PackageManager获取所有安装程序信息的方法,实例分析了Android使用PackageManager获取安装程序信息的具体步骤与相关技巧,需要的朋友可以参考下
    2016-01-01
  • 详解Android Handler的使用

    详解Android Handler的使用

    这篇文章主要介绍了Android Handler使用的相关资料,帮助大家更好的理解和学习使用Android,感兴趣的朋友可以了解下
    2021-04-04
  • Android夜间模式最佳实践

    Android夜间模式最佳实践

    这篇文章主要介绍了Android夜间模式最佳实践,在Android应用普遍支持夜间模式的今天,如何优雅地实现夜间模式?感兴趣的小伙伴们可以参考一下
    2016-02-02
  • Android实现数据按照时间排序

    Android实现数据按照时间排序

    这篇文章主要为大家详细介绍了Android实现数据按照时间排序的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • Android开发之图片压缩工具类完整实例

    Android开发之图片压缩工具类完整实例

    这篇文章主要介绍了Android开发之图片压缩工具类,结合完整实例形式分析了Android针对图片压缩的相关属性设置与转换操作实现技巧,需要的朋友可以参考下
    2017-11-11
  • Android编程实现一键锁屏的方法

    Android编程实现一键锁屏的方法

    这篇文章主要介绍了Android编程实现一键锁屏的方法,结合实例详细分析了锁屏功能所涉及的类与具体功能实现技巧,需要的朋友可以参考下
    2015-11-11
  • Android 曲线图的绘制示例代码

    Android 曲线图的绘制示例代码

    本篇文章主要介绍了Android 曲线图的绘制示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Android Framework原理Binder驱动源码解析

    Android Framework原理Binder驱动源码解析

    这篇文章主要为大家介绍了Android Framework原理Binder驱动源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01

最新评论