zoukankan      html  css  js  c++  java
  • android 自定义Dialog背景透明及显示位置设置

    先贴一下显示效果图,仅作参考:

    代码如下:

    1、自定义Dialog

    复制代码
    public class SelectDialog extends AlertDialog{

    public SelectDialog(Context context, int theme) {
        super(context, theme);
    }

    public SelectDialog(Context context) {
        super(context);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.slt_cnt_type);
    }
    }
    复制代码

    2、布局文件slt_cnt_type.xml代码 

    复制代码
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
      xmlns:android
    ="http://schemas.android.com/apk/res/android"
      android:orientation
    ="vertical"
      android:padding
    ="10dp" android:layout_width="115dp" android:layout_height="wrap_content" android:background="@color/blue">
        
    <Button android:layout_height="wrap_content" android:background="#00000000" android:layout_width="fill_parent" android:text="全部联系人" android:paddingTop="5dp" android:paddingBottom="5dp" android:paddingLeft="10dp" android:gravity="left|center_vertical" android:id="@+id/btnSltCntAll"></Button>
        
    <Button android:layout_height="wrap_content" android:background="#00000000" style="@drawable/greenhand_button" android:text="咕咚用户" android:gravity="left|center_vertical" android:paddingBottom="5dp" android:paddingTop="5dp" android:paddingLeft="10dp" android:paddingRight="10dp" android:layout_width="fill_parent" android:id="@+id/btnSltGudongUser"></Button>
        
    <Button style="@drawable/greenhand_button" android:background="#00000000" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="推荐用户" android:gravity="left|center_vertical" android:paddingTop="5dp" android:paddingBottom="5dp" android:paddingLeft="10dp" android:id="@+id/btnSltRecommend"></Button>
    </LinearLayout>
    复制代码

    3、颜色color.xml代码

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
      
    <color name="transparent">#00000000</color>
    </resources>

    4、样式style.xml代码

    复制代码
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        
    <style name="dialog" parent="@android:style/Theme.Dialog">
            
    <item name="android:windowFrame">@null</item><!--边框-->
            
    <item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
            
    <item name="android:windowIsTranslucent">false</item><!--半透明-->
            
    <item name="android:windowNoTitle">true</item><!--无标题-->
            <item name="android:windowBackground">@color/transparent</item><!--背景透明-->
            
    <item name="android:backgroundDimEnabled">false</item><!--模糊-->
        
    </style>
    </resources>
    复制代码

    4、显示Dialog

    复制代码
    SelectDialog selectDialog = new SelectDialog(this,R.style.dialog);//创建Dialog并设置样式主题
    Window win 
    = selectDialog.getWindow();
    LayoutParams params 
    = new LayoutParams();
    params.x 
    = -80;//设置x坐标
    params.y 
    = -60;//设置y坐标
    win.setAttributes(params);
    selectDialog.setCanceledOnTouchOutside(
    true);//设置点击Dialog外部任意区域关闭Dialog
    selectDialog.show();
    复制代码

     以上仅作参考,如有问题,请大家及时提出来,一起交流学习!


    转自:http://www.cnblogs.com/windlivefamily/articles/2133956.html

  • 相关阅读:
    (转)大型分布式网站架构技术总结
    VC中怎么输入特殊符号(如平方、立方等下标符号)
    【转】VC++的Unicode编程
    【转】VC下的Unicode编程
    MFC多国语言——资源DLL
    MFC多国语言——资源副本
    【转】SetThreadLocale解决越南文乱码问题
    【转】msxml 操作xml
    关于形如--error LNK2005: xxx 已经在 msvcrtd.lib ( MSVCR90D.dll ) 中定义--的问题分析解决
    vc6项目-vc8项目 转换日志
  • 原文地址:https://www.cnblogs.com/xieyuan/p/3787277.html
Copyright © 2011-2022 走看看