Dialog 之高仿IOS

不得不说IOS系统的对话框确实漂亮 那么 我们就也来上一套

这里写图片描述
这里写图片描述

布局文件很简单   就是照着效果图自己贴  考虑到适配的问题  还需要自己做处理

public class DialogIos extends Dialog {

    private Context context;
    private String titleMessage;
    private String contontMessage;

    public DialogIos(Context context, String titleMessage,String contontMessage) {
        super(context,R.style.dialog_custom);
        this.context = context;
        this.titleMessage = titleMessage;
        this.contontMessage = contontMessage;
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Window window = getWindow();
        window.setGravity(Gravity.CENTER);
        setContentView(R.layout.dialog_ios_layout);
        setCanceledOnTouchOutside(false);// 点击Dialog外部消失
        initView();
    }

    private void initView() {
        TextView diolog_title = (TextView) findViewById(R.id.diolog_title);
        diolog_title.setText(titleMessage);
        TextView diolog_contont = (TextView) findViewById(R.id.diolog_contont);
        diolog_contont.setText(contontMessage);
        TextView comfirm_choose = (TextView) findViewById(R.id.comfirm_choose);
        comfirm_choose.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (null != onclickItemListen){
                    onclickItemListen.OnitemClick("1");
                }
            }
        });
        TextView cancle_choose = (TextView) findViewById(R.id.cancle_choose);
        cancle_choose.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (null != onclickItemListen){
                    onclickItemListen.OnitemClick("0");
                }
            }
        });
    }

    public interface OnclickItemListen{
        void OnitemClick(String contont);
    }
    public OnclickItemListen onclickItemListen;
    public void SetOnCLickListen(OnclickItemListen onclickItemListen){
        this.onclickItemListen = onclickItemListen;
    }
}



<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="@drawable/button_write_back"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="70dp"
            android:gravity="center"
            android:orientation="vertical">

            <TextView
                android:id="@+id/diolog_title"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="5dp"
                android:gravity="center"
                android:text="提示"
                android:textColor="@color/black"
                android:textSize="16dp" />

            <TextView
                android:id="@+id/diolog_contont"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="是否删除该地址"
                android:textColor="@color/black"
                android:textSize="14dp" />
        </LinearLayout>

        <View
            android:layout_width="match_parent"
            android:layout_height="1px"
            android:background="@color/line_eee" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="40dp">

            <TextView
                android:id="@+id/cancle_choose"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:text="取消"
                android:textColor="#00f"
                android:textSize="15dp" />

            <View
                android:layout_width="1px"
                android:layout_height="match_parent"
                android:background="@color/line_eee" />

            <TextView
                android:id="@+id/comfirm_choose"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:text="确定"
                android:textColor="@color/red_color"
                android:textSize="15dp" />
        </LinearLayout>
    </LinearLayout>
</LinearLayout>



    <!-- dialog样式 -->
    <style name="dialog_custom" parent="@android:style/Theme.Dialog">
        <item name="android:windowIsFloating">true</item>    <!--是否浮在界面上-->
        <item name="android:windowIsTranslucent">true</item> <!--是否半透明-->
        <item name="android:windowNoTitle">true</item>       <!--是否有标题-->
        <item name="android:windowBackground">@android:color/transparent</item> <!--窗口背景色透明-->
        <item name="android:backgroundDimEnabled">true</item> <!--背景是否模糊显示-->
    </style>

具体用法

 DialogIos dialogIos = new DialogIos(AddHbuyDynamicsActivity.this,"信息未完善","完善用户名、手机号、邮箱、头像、地区\n生日等才可以发帖哦~");
                                        dialogIos.SetOnCLickListen(new DialogIos.OnclickItemListen() {
                                            @Override
                                            public void OnitemClick(String contont) {
                                                if ("1".equals(contont)){
                                                    startActivity(new Intent(AddHbuyDynamicsActivity.this, HbuyUserDetailActivity.class));
                                                    dialogIos.cancel();
                                                }else {
                                                    dialogIos.cancel();
                                                }
                                            }
                                        });
                                        dialogIos.show();

写的很仓促 稍后会将他做一个完善 网上也有一个仿IOS的 SuperDialog 大家可以去看一下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值