Android自定义弹窗-Alert

Alert是一款用于Android的开源库,能够轻松创建仿iOS风格的弹窗,包括无标题弹窗、底部菜单、进度提示等。该库通过简单的API调用即可实现多种类型的弹窗效果,适用于各种应用界面需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Alert

github地址:https://github.com/enChenging/Alert

效果图如下:

用法

Android Studio

将其添加到存储库build.gradle中

allprojects {
    repositories {
      	...
        maven{url 'https://jitpack.io'}
    }
}

在build.gradle文件中的dependencies下添加引用:

implementation 'com.github.enChenging:Alert:${latest.version}'

使用:


private String[] bottomData = {"发送给好友", "转载到空间相册", "上传到群相册", "保存到手机", "收藏", "查看聊天图片"};
private List<ItemBean> listData = new ArrayList<>();
     for (int i = 0; i < 100; i++) {
        listData.add(new ItemBean("条目 " + i, 0));
    }
    
new Alert(MainActivity.this)
        .builder()
        .setMsg("仿ios无标题弹窗")
        .setPositiveButton(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_SHORT).show();

            }
        })
        .show();

new Alert(MainActivity.this)
        .builder()
        .setTitle("标题")
        .setMsg("仿ios弹窗")
        .setPositiveButton(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_SHORT).show();
            }
        })
        .setNegativeButton(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "取消", Toast.LENGTH_SHORT).show();
            }
        }).show();

new Alert(MainActivity.this)
        .builder(Alert.Type.BOTTOM)
        .addItem("清空列表")
        .setOnItemClickListener(new Alert.OnAlertItemClickListener() {
            @Override
            public void onItemClick(View view, int position) {
                Toast.makeText(MainActivity.this, position + "", Toast.LENGTH_SHORT).show();
            }
        })
        .show();

new Alert(MainActivity.this)
        .builder(Alert.Type.BOTTOM)
        .addItem("相机")
        .addItem("相册")
        .setOnItemClickListener(new Alert.OnAlertItemClickListener() {
            @Override
            public void onItemClick(View view, int position) {
                Toast.makeText(MainActivity.this, position + "", Toast.LENGTH_SHORT).show();
            }
        })
        .show();

new Alert(MainActivity.this)
        .builder(Alert.Type.BOTTOM)
        .addItem(bottomData)
        .setOnItemClickListener(new Alert.OnAlertItemClickListener() {
            @Override
            public void onItemClick(View view, int position) {
                Toast.makeText(MainActivity.this, position + "", Toast.LENGTH_SHORT).show();
            }
        })
        .show();

new Alert(MainActivity.this)
        .builder(Alert.Type.BOTTOM)
        .addItem(listData)
        .setOnItemClickListener(new Alert.OnAlertItemClickListener() {
            @Override
            public void onItemClick(View view, int position) {
                Toast.makeText(MainActivity.this, position + "", Toast.LENGTH_SHORT).show();
            }
        })
        .show();

new Alert(MainActivity.this)
        .builder(Alert.Type.PROGRESS)
        .setProgressTextGone()
        .show();

new Alert(MainActivity.this)
        .builder(Alert.Type.PROGRESS)
        .show();

new Alert(MainActivity.this)
        .builder(Alert.Type.PROGRESS)
        .setProgressText("自定义文字自定义文字自定义文字自定义文字自定义文字")
        .show();

new Alert(MainActivity.this)
        .builder(Alert.Type.CUSTOM_DIALOG, R.layout.custom_dialog_layout)
        .initDialogLayout(new Alert.OnInitDialogLayoutListener() {
            @Override
            public void initView(View view, final Dialog dialog) {
                view.findViewById(R.id.iv_close).setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(MainActivity.this, "消失", Toast.LENGTH_SHORT).show();
                        dialog.dismiss();
                    }
                });
                view.findViewById(R.id.btn_ok).setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(MainActivity.this, "领取", Toast.LENGTH_SHORT).show();
                        dialog.dismiss();
                    }
                });
            }
        })
        .show();

混淆

#Alert
-dontwarn com.release.alert.**
-keep class com.release.alert.**{*;}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值